5

我是 angularjs 的新手。我正在尝试发出需要授权的 API 请求。我已将它包含在请求的标头中,但它仍然无法正常工作。我确定我的访问令牌正在工作。有什么建议吗?

$scope.fetch = function() {
    $scope.code = null;
    $scope.response = null;
    $http({
        method: $scope.method,
        url: $scope.url,
        cache: $templateCache,
        headers: {
            Authorization: "access token"
        }
    }).
    success(function(data, status) {
        $scope.status = status;
        $scope.data = data;
    }).
    error(function(data, status) {
        $scope.data = data || "Request failed";
        $scope.status = status;
    });
};
4

2 回答 2

5

您可以使用以下

 $http.defaults.headers.post["Content-Type"] = "application/x-www-form-urlencoded;charset=utf-8";

它会将上述标头添加到您从应用程序发出的每个 POST 调用中。要添加所有方法通用的标头,请尝试以下操作。

$http.defaults.headers.common['Authorization'] = "Bearer " + user.oauthInfo.access_token;
于 2014-01-23T15:37:59.277 回答
0

您是否在浏览器的网络请求日志中看到请求的标头?

如果是这样,它是预期的格式吗?通常,“Authorization”标头前面会有一些东西,例如“Basic”(正如 DevPat 在上面的评论中提到的)或“Bearer”。这里的内容取决于接收请求的后端系统。

预期标头示例:

Authorization: Bearer access_token
Authorization: Basic access_token
于 2014-01-09T18:04:08.813 回答