2013-01-01 101 views
5

我目前正在嘗試從URL導入one of my scripts,但require函數在這種情況下似乎不起作用。是否可以使用node.js從URL導入腳本?

var functionChecker = require("http://javascript-modules.googlecode.com/svn/functionChecker.js");

這是由該腳本產生的錯誤信息的摘錄:

Error: Cannot find module 'http://javascript-modules.googlecode.com/svn/functionChecker.js'

有什麼辦法來從node.js中的URL輸入腳本?

+0

一種選擇是將腳本下載到本地目錄,然後像其他任何模塊一樣將其導入。 –

+0

可能相關:http://stackoverflow.com/questions/11944932/how-to-download-a-file-with-node-js –

+0

這段代碼片段解決了我的問題:http://stackoverflow.com/a/4174157/975097 –

回答

3

我終於明白了。本示例下載文件http://javascript-modules.googlecode.com/svn/functionChecker.js,然後將其保存在本地目錄中。

//var functionChecker = require(__dirname + '/functionChecker.js'); 
//functionChecker.checkAllFunctions(__filename); 

var http = require('http'); 
var fs = require('fs'); 
var google = http.createClient(80, 'www.google.com'); 
var request = google.request('GET', '/svn/functionChecker.js', 
    {'host': 'javascript-modules.googlecode.com'}); 
request.end(); 
out = fs.createWriteStream('functionChecker.js'); 
request.on('response', function (response) { 
    response.setEncoding('utf8'); 
    response.on('data', function (chunk) { 
    out.write(chunk); 
    }); 
}); 

//function name: stuff 
//requires functions: false 
//is defined: false 
//description: blah blah woohoo. 
+1

我想我已經找到了更好的解決方案:http://stackoverflow.com/a/14113859/975097 –

相關問題