我正在按照这个教程在谷歌云平台上进行操作,发现SIMPLE应用在8080端口上成功启动,但当我前往浏览器从外部查看时,我得到一个内部服务器错误。教程可以在这里找到。https:/cloud.google.comappenginedocsstandardnodejsbuilding-appdeploying-web服务。 我使用的是Win8.1的GCP云端shell终端。
我也试过更新我的npm包,把我的yaml、nodejs文件移到下一个上级目录,以及删除下一个上级目录中的package.json。就像我说的那样,8080端口可以出现,并且可以登录到终端,但在浏览器中却不能出现。我的package.json如下。
{
"name": "express",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"start": "node server.js",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"description": ""
}
我的app.yaml文件是
runtime: nodejs10
而我的server.js文件是
//this is a test by MP2
// date of use : 2020-0601
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello from App Engine!');
});
// Listen to the App Engine-specified port, or 8080 otherwise
const PORT = process.env.PORT || 8080;
app.listen(PORT, () => {
console.log(`Server listening on port ${PORT}...`);
});
任何帮助将是巨大的,因为我是新的谷歌云。也是有趣的是,最新版本的快递是安装在下一个更高的文件夹,但不是在当前的一个所需的JSON是。(并且无法更新它)谢谢你。-MP
这似乎是因为没有明确的依赖关系,在 package.json
:
"dependencies": {
"express": "^4.17.1"
}
我复制了所有的步骤,它的工作。在教程中有4.16.3版本,我有不同的,因为我用了 npm install express -s
并自动添加版本到package.json中。不过我这边4.16.3也能用。
希望能帮到你