gpt4 book ai didi

node.js - ExpressJs帖子在heroku上不起作用

转载 作者:太空宇宙 更新时间:2023-11-04 02:17:16 24 4
gpt4 key购买 nike

我遇到了以下问题。

当我开发我的expressjs路由时,在localhost上,我的代码可以正常工作。在邮递员上,我也有成功,在我的webapp上也有。

但是相同的代码在heroku上不起作用。
我总是在路线上找到404。

我做了一些测试,发现问题出在app.post路线上。

当我使用app.get时,代码可在localhost和heroku上运行,但是使用app.post仅可在localhost而不在heroku上运行,我得到404。

我的节点版本和expressjs版本都相同。已检查。

var express     = require('express');
var app = express();

var cors = require('cors');
var bodyParser = require('body-parser');
var morgan = require('morgan');
var mongoose = require('mongoose');
var config = require('./config'); // get our config file

var port = process.env.PORT || 3333;
mongoose.connect(config.database);

app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.use(morgan('dev'));
app.use(cors());

app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});

app.post('/a', function(req, res) {
res.json({ message: 'hooray! welcome to our api!' });
});


app.listen(port);


来自heroku日志的消息

 at=info method=GET path="/a" host=nx-admin-api.herokuapp.com request_id=60a9fefc-92f1-48fc-a4c8-740e4d61bcd7 fwd="201.53.63.230" dyno=web.1 connect=4ms service=43ms status=404 bytes=322
2016-02-02T02:07:29.306917+00:00 app[web.1]: GET /a 404 46.719 ms - 14

最佳答案

您应该使用CORS模块。像这样;

    ...
app.use(bodyParser.json());
app.use(cors());
...

关于node.js - ExpressJs帖子在heroku上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35143872/

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