为什么我的 GET 请求不起作用? - CORS + Express + Fetch API
Why is my GET request not working? - CORS + Express + FetchAPI
我正在尝试 运行 从我的客户端 vanilla JS 向我的 ExpressJS 服务器发送一个简单的 GET 请求 - 我的客户端 运行 在端口 80 上的 nginx 静态服务器上,而我的Express 服务器 运行ning 在端口 3000 上的 nodejs 上。
我不断收到 chrome 错误消息:
GET http://localhost:3000/ net::ERR_CONNECTION_REFUSED
客户端JS:
async function ping() {
const response = await fetch('http://localhost:3000');
return response;
}
服务器端 JS:
const express = require('express');
const cors = require('cors');
const app = express();
const port = 3000;
app.use(express.json);
app.use(cors());
app.get('/', (req, res) => {
res.send('Hello world!');
});
app.listen(port, () => {
console.log(`Server running on port ${port}`);
});
如果有人能帮我解决这个问题,我将不胜感激,在此先感谢您!
我已将您的服务器代码复制到 server.js 文件并将 app.use(express.json)
更改为 app.use(express.json())
或完全删除它,打开 http://localhost:3000/
我得到了
所以你的代码中唯一的问题是我提到的那一行,顺便说一句,当我复制你的确切代码时,我最终遇到了超时,而不是连接被拒绝。
我意识到是我的网络设置问题而不是我的代码问题,很抱歉发布了一个无用的问题。
我正在尝试 运行 从我的客户端 vanilla JS 向我的 ExpressJS 服务器发送一个简单的 GET 请求 - 我的客户端 运行 在端口 80 上的 nginx 静态服务器上,而我的Express 服务器 运行ning 在端口 3000 上的 nodejs 上。
我不断收到 chrome 错误消息:
GET http://localhost:3000/ net::ERR_CONNECTION_REFUSED
客户端JS:
async function ping() {
const response = await fetch('http://localhost:3000');
return response;
}
服务器端 JS:
const express = require('express');
const cors = require('cors');
const app = express();
const port = 3000;
app.use(express.json);
app.use(cors());
app.get('/', (req, res) => {
res.send('Hello world!');
});
app.listen(port, () => {
console.log(`Server running on port ${port}`);
});
如果有人能帮我解决这个问题,我将不胜感激,在此先感谢您!
我已将您的服务器代码复制到 server.js 文件并将 app.use(express.json)
更改为 app.use(express.json())
或完全删除它,打开 http://localhost:3000/
我得到了
所以你的代码中唯一的问题是我提到的那一行,顺便说一句,当我复制你的确切代码时,我最终遇到了超时,而不是连接被拒绝。
我意识到是我的网络设置问题而不是我的代码问题,很抱歉发布了一个无用的问题。