1
我玩弄和的NodeJS不同专门盯着nowjsNowJs服务器到网络服务器
我有现在启动和运行节点的服务器上运行,我有一个单独的网络服务器。我成功地让节点服务器返回客户端脚本,并在Web服务器上引用它。这将返回一个200响应代码,并且所有外观都很好。然而,我得到的JavaScript错误告诉我,'现在'是未定义的。据我了解,'now'变量应该通过客户端脚本可用,但似乎并非如此。有谁知道这种设置是否可行?因此,设置是类似下面的伪代码
//Server 1 node.com
if(request.url === '/nowjs/now.js'){
var file = 'path_to_clientlib/now.js';
fs.readFile(file, function(e, data) {
if (e) {
throw e;
}
response.writeHead(200,{'Content-Type': 'application/javascript'});
response.end(data);
}
和server.com
<script src="/jquery.js"></script>
<script src="http://node.com/nowjs/now.js"></script> <!-- This is returned properly -->
<script>
$(document).ready(function(){
now.receiveMessage = function(name, message){
$("#messages").append("<br>" + name + ": " + message);
}
$("#send-button").click(function(){
now.distributeMessage($("#text-input").val());
$("#text-input").val("");
});
now.name = prompt("What's your name?", "");
});
</script>
<div id="messages"></div>
<input type="text" id="text-input">
<input type="button" value="Send" id="send-button">
直线距离操作台只需返回“现在”没有定义
嗨,虽然文件服务可能可以以另一种方式完成,但这不是真的我遇到的问题。 JavaScript文件得到正确的服务,但当客户端脚本正常返回时,其他网站上的'now'始终未定义。是否可以跨域进行此操作? – TommyBs 2012-07-11 10:59:49
@TommyBs您是否有nowInitialize作为全局函数?否则,请分享您的nowjs版本的链接。 这个版本是否一样? https://raw.github.com/Flotype/now/master/lib/client/now.js – 2012-07-11 11:14:09
嗨,该文件可以在这里找到http://nodeurl.eu01.aws.af.cm/nowjs/now。 js – TommyBs 2012-07-11 11:29:23