gpt4 book ai didi

angularjs - 不允许使用 Expressjs 405 POST 方法

转载 作者:搜寻专家 更新时间:2023-10-31 23:42:27 25 4
gpt4 key购买 nike

Route 在 POSTMAN chrome 扩展中运行良好,而在 Angular 中则不然。

这是我的 Express js 代码:

var express = require('express');
var router = express.Router();
var app = express();
var bodyParser = require('body-parser')
var routes = require('./routes');
var connection = require('express-myconnection');

app.use(bodyParser.json()); // for parsing application/json
app.use(bodyParser.urlencoded({ extended: true })); // for parsing application/x-www-form-urlencoded

/** Serve our app on root path */
app.use('/', express.static('app'));

/** Login API */
app.post('/login', routes.login);

Angular 代码:

$http({
method: 'POST',
url: apiUrl + 'login',
headers: {
'Content-Type': 'application/x-www-form-urlencoded' // necessary for expressjs
},
transformRequest: function(obj) {
var str = [];
for (var p in obj) {
str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
}
return str.join("&");
},
data: user
});

不知道怎么回事!这就是我得到的:

enter image description here

最佳答案

尝试检查两个请求的 header 和内容,两者之间肯定存在差异。您的响应的 Allow header 显然不包含 POST,因此可能存在一些 CORS 问题。

关于angularjs - 不允许使用 Expressjs 405 POST 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29706693/

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