Aurelia fetch-client为发布请求投出401

时间:2016-06-14 08:05:52

标签: aurelia-fetch-client

我在尝试发出httpPost请求时遇到问题。 它总是返回401 Unauthorized错误。

我们正在使用来自我们的服务器(Apache Tomcat7)的基于令牌的身份验证和SpringSecurity插件来生成authToken。

以下是我配置HttpClient的方法。

在构造函数中,我进行了httpClient配置。

@inject(HttpClient)
export default class UtilService {

    constructor(http) {

        // Configure the HttpClient globally ( in entire app)
        http.configure(_http => {
            _http
                .useStandardConfiguration()
                .withBaseUrl(config.baseUrl)
                .withDefaults({
                    credentials: "same-origin",
                    headers: {
                        "Content-Type": "application/x-www-form-urlencoded",
                        "X-Requested-With": "Fetch",
                        "Accept": "*/*",
                        "Authorization": "Bearer "+localStorage[config.tokenName]
                    }
                })

                .withInterceptor({
                    responseError(error) {
                        if (error.status && error.status === 401) {
                            console.log("error recorded:"+error)
                        }
                        throw error;
                    }
                });
        });
        this.http = http;
    }
}

并且调用函数:

profileInfo(url, paramsObj) {

   // url = http://localhost:8082/xyz/api/v1/profileInfo
   // paramsObj = {access_token : localStorage[config.tokenName]};

   return this.http.fetch(url, {
       method: "POST",
       body: $.param(paramsObj)
    }).catch(err=>{
        console.log("failure:"+err);
        throw err
    }); 
}

我总是得到401(未经授权)。 任何帮助将不胜感激。

0 个答案:

没有答案