Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法获取本地html文件以与本地express Node.js服务器通信。未能加载资源:网络::错误\u连接\u被拒绝_Javascript_Node.js_Localhost - Fatal编程技术网

Javascript 无法获取本地html文件以与本地express Node.js服务器通信。未能加载资源:网络::错误\u连接\u被拒绝

Javascript 无法获取本地html文件以与本地express Node.js服务器通信。未能加载资源:网络::错误\u连接\u被拒绝,javascript,node.js,localhost,Javascript,Node.js,Localhost,我是网页设计新手,正在尝试创建一个简单的本地服务器和本地客户端。我担心我在兜圈子时掉进了兔子洞 我制作了一个简单的Express node.js服务器: var express = require('express'); var bodyParser = require('body-parser'); var app = express(); app.use(bodyParser.urlencoded({ extended: true })); var port = 3000; app.lis

我是网页设计新手,正在尝试创建一个简单的本地服务器和本地客户端。我担心我在兜圈子时掉进了兔子洞

我制作了一个简单的Express node.js服务器:

var express = require('express');
var bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.urlencoded({ extended: true }));
var port = 3000;

app.listen(port, function() {
    console.log("Listening on port: " + port);
});
app.get('/', function(req, res) {
    console.log(req);
    res.send('Get request received at "/"');
});

app.post('/quotes', function(req, res) {
    console.log(req);
    // do something

});
我有一个javascript客户端:

const url = "http://localhost/3000";
fetch(url)

.then((resp) => resp.json())
    .then(function(response) {

        let data = response.results;
        console.log(data);
        //do something
    })

.catch(function(error) {
    console.log(JSON.stringify(error));
});
从index.html文件调用

当我在(chrome)浏览器中键入内容时,我得到

'在“/”处收到请求'

在浏览器中显示,在node.js控制台中显示很长的req,正如我所期望的那样

但是,当我将index.html加载到浏览器中时,它不起作用

最初index.html文件与node.js服务器位于不同的目录中,我得到了错误:

对飞行前请求的响应未通过访问控制检查:否 “Access Control Allow Origin”标头出现在请求的服务器上 资源因此,不允许访问源“null”

因此,我将其移动到与node.js服务器相同的目录中,现在出现以下错误:

未能加载资源:网络::错误\u连接\u被拒绝 在浏览器控制台中,节点控制台中没有输出

我会取代

consturl=”http://localhost/3000";


使用
consturl=”http://localhost:3000";

似乎我需要在服务器上启用cors。npm安装cors,这个答案解决了我的问题。

这不起作用,但它确实恢复了我以前的错误。浏览器控制台现在显示:请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“null”。如果不透明响应满足您的需要,请将请求的模式设置为“no cors”,以获取禁用cors的资源。