gpt4 book ai didi

angularjs - $ http.post返回422,带有angular和grails

转载 作者:行者123 更新时间:2023-12-02 15:19:15 24 4
gpt4 key购买 nike

我正在使用grails 3.x作为 Restful 服务提供者。提供了一个简单的休息资源,例如:

@Resource(uri ='/users', readOnly = false, formats = ['json', 'xml'])
class User {
String username
String email
String password
}

我已经通过curl成功测试了它,例如:
$ curl -H "Content-Type: application/json" -X POST -d "{\"username\":\"xyz\",\"password\":\"xyz\", \"email\":\"w@g.com\"}" http://localhost:8080/users
{"id":1,"email":"w@g.com","password":"xyz","username":"xyz"}

但是当我使用angularjs执行http post ajax调用时,
$http.post(url, {"username":"dummy", "password":"test", "email":"email@g.com"})
.success(function(data, status, headers, config) {
// $location.path('/listUsers');
console.log("data " + data);
}).error(function(data, status, headers, config) {
console.log("error occured... " + status);
});

即使使用相同的精确值,它始终会抛出422状态。

chrome console

最佳答案

您可以按以下方式全局放置此标题:

angular.module('myApp', [])
.config(function ($httpProvider) {
$httpProvider.defaults.headers.put['Content-Type'] = 'application/json';
$httpProvider.defaults.headers.post['Content-Type'] = 'application/json';
})

关于angularjs - $ http.post返回422,带有angular和grails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41204390/

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