javascript - 发送ajax请求到远程node.js服务器

标签 javascript node.js ajax cors

我有简单的 Nodejs 服务器(包括 CORS):

var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var port = 8001;
http.listen(port,function () {
    console.log('listening on:'+ port);
});
app.use(function (req, res, next) {
    res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8000');
    res.setHeader('Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
    res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type');
    res.setHeader('Access-Control-Allow-Credentials', true);
    next();
});
app.post('/getSockets', function (req,res,next) {
   console.log(req.body);
});

和简单的ajax请求

 $.ajax({
                type: "POST",
                url: "http://localhost:8001/getSockets",
                data: "Hello world",
                success: function (data, textStatus, XMLHttpRequest) {
                    console.log(data);
                    console.log("success!");
                },
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    console.log(XMLHttpRequest.status);
                }
            });

但是我遇到了错误 404,找不到 localhost:8001/getSockets

最佳答案

404错误意味着该URL不存在或无法访问

更改此行:

res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8000');

对此:

res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8001');

关于javascript - 发送ajax请求到远程node.js服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45833989/

相关文章:

javascript - 防止 RequireJS 缓存所需的脚本

javascript - 如何创建 node-express-postgresql 登录页面?

node.js - nodejs的napi模块没有 self 注册

Node.js SQL Server 驱动程序问题 - 如何排除故障

javascript - 创建具有 toString 函数的 javascript 对象数组

javascript - 正则表达式匹配不带前导零的整数

javascript - 调试石头剪刀布游戏? JavaScript

javascript - 将 AJAX 加载程序附加到各个链接上的菜单/导航栏

javascript - 对象覆盖不起作用

php - 获取单选按钮值并通过ajax发送到php