AngularJS向SilverStripe API发送JSON数据的POST请求

3
我使用 SilverStripe 模块(在这里)编写了一个相当基本的 API。在构建过程中,我使用 Postman 和 Advanced REST Client chrome 扩展程序进行测试,所以我知道这些端点是有效的。
现在,在尝试到达端点(POST json)时,API 告诉我必需的值未设置。我做了一点调查,并比较了来自 Postman 的请求头和使用 Firebug 的 Angular 的请求头。唯一显著的差异是,在 Postman 中,Content-Type 标头为:

"application/json"

而在 Angular 中为:

"application/json; charset=UTF-8"

这是 Angular POST 的代码(相当基本):
notebookFactory.addNotebook = function(title) {

    var notebook = "Testing Title 23!";
    var message = {
        Title: notebook
    };

    return $http({
        url: 'api/notebook',
        method: 'POST',
        headers: { 'Content-Type': 'application/json' },
            data: message
    });     
};

API错误提示:"JSON属性Title是必需的"。
这个会有影响吗?我已经尝试在Postman中在Content-Type结尾添加charset=UTF-8,但仍然收到相同的错误。是否有任何方法可以从Angular POST头中删除charset?
如果需要更多信息,请告诉我,提前致谢!

你能在网络控制台中展示Angular的POST请求下Params选项卡下的Request Payload吗? - Phil
1个回答

1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接