繁体   English   中英

在Azure部署后使用Cors,Express和Google API的Node.js服务器应用无法正常工作

[英]Node.js server app using cors, express and google api not working after azure deployment

我有一个node.js服务器api应用程序,该应用程序在部署到天蓝色后无法正常工作。

最初,它依靠google.api来获取数据,然后将数据存储在一个数组中,并通过响应快速的get调用将其发送给客户端。

最初我使用:

const express = require('express');  
const app = express();  
const cors = require("cors");
const _ = require("lodash");
const port = 30000;

app.use(cors());

在本地主机上运行良好。

为了进行部署,在完成教程之后,我将其更改为:

const express = require('express');  
const app = express();  
const cors = require("cors");
const _ = require("lodash");
const port = process.env.PORT || 80;
var http = require('http');

app.use(cors());

var server = http.createServer(app);
server.listen(port, function () { 
});

哪个没有用,最后:

const express = require('express');  
const app = express(); 
const _ = require("lodash");
const port = process.env.PORT || 80;

var login = require('./routes/login');
...
app.use('/login', login);
...
module.exports = app;

并为get命令创建了一个新文件夹,如此处https://github.com/Azure-Samples/app-service-web-nodejs-get-started/blob/master/app.js所示

似乎没有任何反应,我继续收到错误消息:

GET http:// nameofsite / login 404(未找到)

XMLHttpRequest无法加载nameofsite / login。 所请求的资源上没有“ Access-Control-Allow-Origin”标头。 因此,不允许访问源“ nameofclient”。 响应的HTTP状态码为404。

我尝试过包括cors标头,以及将客户端站点添加到azure门户中cors允许的来源中,但这没有什么区别。 谁能解决这个问题或提供有关如何使用Google表格文档中的信息正确格式化Node.js服务器的信息?

这可能是一个愚蠢的问题,但是当您将VM移至Azure时,是否设置了IP地址,更新了外部DNS并配置了虚拟网络以允许Node和您的代码需要正确的流量?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM