nodejs和一个域和一个端口上的静态html

我有静态html网站发送AJAX请求到nodejs脚本。 我不想发送跨域请求,所以我希望静态网站和nodejs在相同的端口和相同的域上工作。 我怎样才能做到这一点? 现在我的nodejs在localhost:1337上工作,我的静态网站在localhost / mywebsite上工作,AJAX请求不起作用。

取决于你正在使用的框架。 使用express ,您可以设置应用程序的所有dynamic端点,还可以:

 app.use(express.static(__dirname + '/static')); 

这将服务于你的nodejs项目的/static目录以及其余的端点。

注意:

  • 其他框架也有类似的设置。 Google for nodejs <your framework> serving static files

  • 这样做没有框架是不平凡的。