Dai*_*ynn 4 javascript http-post angularjs angularjs-resource angularjs-http
我正在调用一个我无法控制的后端服务器.目前它正在使用这样的jQuery ajax:
return $.ajax({
type: "POST",
url: "/api/cases/store",
contentType: "application/json",
data: JSON.stringify(parameters),
headers: { "Authorization": cred } : {}
}) // ... etc.
Run Code Online (Sandbox Code Playgroud)
我想将它转换为使用该$resource服务,并让它工作这样做
$http.defaults.headers.common['Authorization'] = cred;
return $resource('/api/cases/store').save();
Run Code Online (Sandbox Code Playgroud)
唯一的问题是我必须$http使用auth凭据设置全局服务默认值.
我看到你应该能够通过$http调用传递自定义标头,现在通过$resource调用,但我找不到任何关于如何在我的情况下执行它的示例(使用POST).
我在AngularJS文档中也找不到任何相关内容.你们怎么想出这个东西?文档非常糟糕!
而不是这个:
$http.defaults.headers.common['Authorization'] = cred;
return $resource('/api/cases/store').save();
Run Code Online (Sandbox Code Playgroud)
做这个:
return $resource('/api/cases/store', {}, {
save: {
method: 'POST',
headers: { 'Authorization': cred }
}
}).save();
Run Code Online (Sandbox Code Playgroud)
请注意,您必须使用"保存"作为操作,第三个参数中的第一个键.无法测试,所以让我知道它是否有效.
并且我同意.文档没有谈论它.看一下angular-resource.js中$ resource源代码中的DEFAULT_ACTIONS列表