Javascript Node.js服务器在浏览器中超时,但cURL请求有效
我正在一个我没有的Ubuntu服务器上开发。这是我的第一个节点应用程序 Node.js已安装在服务器上。我创建了一个简单的服务器文件: Server.jsJavascript Node.js服务器在浏览器中超时,但cURL请求有效,javascript,node.js,Javascript,Node.js,我正在一个我没有的Ubuntu服务器上开发。这是我的第一个节点应用程序 Node.js已安装在服务器上。我创建了一个简单的服务器文件: Server.js var http = require("http"); http.createServer(function (request, response){ response.writeHead(200, {'Content-Type': 'text/plain'}); //response to send out res
var http = require("http");
http.createServer(function (request, response){
response.writeHead(200, {'Content-Type': 'text/plain'});
//response to send out
response.end('Hello sof');
//print to screen
console.log('request processed\n');
}).listen(1234);
console.log("Server Running on 1234");
在putty中,我使用以下命令运行服务器:
node Server.js
在putty的另一个实例中,我运行以下命令:
curl http://my.url.website.ca:1234/*curl request*/
在运行curl命令的putty实例中,我得到以下输出:
你好,sof
在我运行节点服务器的putty实例中,这会打印到屏幕上:
已处理请求
看起来服务器正在运行。但是,当我在浏览器中输入时,出现以下错误:
获取网络::错误\u连接\u超时\u
在服务器运行的putty窗口中,屏幕上不会打印任何内容。
我是做错了什么还是代码中遗漏了什么?或者这是一个配置问题?我将服务器人员链接到此页面,他确认问题实际上是防火墙。我尝试使用的端口未打开。然后端口被打开,我可以通过浏览器进行连接 然后,我用jquery应用程序对其进行了测试,发现了一个CORS错误。对于任何和我遇到同样问题的人来说,你很可能会遇到下一个问题。我通过添加以下标题修复了此问题:
response.setHeader('Access-Control-Allow-Origin', 'http://my.website.ca');
response.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
response.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
干杯 听起来像是一个配置错误的防火墙或类似的东西,你检查过了吗?顺便说一下,你的代码很好。它可能会帮助你,那么端口是什么-1234或8081?它们都只是我在示例中使用的假人。假设它们是相同的。我编辑这篇文章是为了让它们保持一致,谢谢你指出这一点!