gpt4 book ai didi

node.js - 如何将 CORS-Headers 添加到静态连接服务器?

转载 作者:IT老高 更新时间:2023-10-28 22:05:35 25 4
gpt4 key购买 nike

我正在编写一个提供静态 html、css 和 javascript 的小型演示 Web 服务器。服务器看起来像

(function () {
"use strict";

var http = require("http");
var connect = require('connect');
var app = connect()
.use(connect.logger('dev'))
.use(connect.static('home'));

var server = http.createServer(app);
server.listen(9999, function () {
console.log('server is listening');
});
})();

我的客户端 javascript 对不同的服务器进行 ajax 调用。如何添加

Access-Control-Allow-Origin: http://example.com

到我的服务器响应,以便客户端javascript可以进行ajax调用?

最佳答案

自从 express 之后,搞清楚这个有点麻烦。宠坏了我。

看看enable cors .基本上,您需要做的是将 Access-Control-Allow-Origin 添加到要启用 cors 的域中。 response.setHeaders非常适合这项任务。

另外需要注意的是 connect 没有办法处理路由。如果您的应用程序需要不同的路由,那么您可能必须为每个路由编写逻辑,并将 res header 添加到要启用 cors 的那些 header 。你可以使用 req.url

var http = require("http");
var connect = require('connect');

var app = connect()

.use(connect.logger('dev'))

.use(connect.static('home'))

.use(function(req, res){

res.setHeader("Access-Control-Allow-Origin", "http://example.com");
res.end('hello world\n');

});

var server = http.createServer(app);

server.listen(9999, function () {

console.log('server is listening');
});

这是我在 chrome 开发工具中得到的响应

HTTP/1.1 200 OK
Access-Control-Allow-Origin: http://example.com
Date: Sat, 15 Jun 2013 16:01:59 GMT
Connection: keep-alive
Transfer-Encoding: chunked

关于node.js - 如何将 CORS-Headers 添加到静态连接服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17124600/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com