要使用AJAX向NODE JS服务器发送cookie,需要在AJAX请求中设置withCredentials标志为true,如下所示:
$.ajax({ url: '/example', type: 'GET', xhrFields: { withCredentials: true }, success: function(data) { console.log(data); } });
在NODE JS服务器端,需要设置Access-Control-Allow-Origin和Access-Control-Allow-Credentials标头,以便允许来自AJAX的跨域请求,并在响应中包含cookie。示例如下:
app.use(function(req, res, next) { res.header('Access-Control-Allow-Origin', 'http://example.com'); res.header('Access-Control-Allow-Credentials', true); next(); });
请注意,在res.header('Access-Control-Allow-Origin', 'http://example.com')中,http://example.com应替换为您允许请求的域名。如果要允许所有域发送请求,则可以使用通配符*。
同时,还需要设置cookie-parser中间件,以便在服务器端解析和处理cookie。示例如下:
const cookieParser = require('cookie-parser'); app.use(cookieParser());
这样就能够成功发送和接收cookie了。
下一篇:Ajax没有显示任何内容。