如何使用Aurelia Fetch Client查询受Windows身份验证保护的API?

时间:2016-08-15 13:36:22

标签: aurelia aurelia-fetch-client aurelia-framework aurelia-http-client

我们有一个服务于Aurelia静态文件和API的Web服务器,服务器受 NTLM 保护(使用集成Windows身份验证 OWIN < / em>的)。

使用 Aurelia Fetch Client 时,我们可以成功点击API而不会出现问题。这是我们使用的配置:

constructor(private http: HttpClient){
        http.configure(config => {
            config
            .withBaseUrl('api/')
            .useStandardConfiguration();
        });

但是,当我们使用 Aurelia Fetch Client 时,我们会收到401 (Unauthorized)(似乎缺少授权标头)

constructor(private client: HttpClient) {
        client.configure(cfg => {
            cfg
            .withBaseUrl('http://localhost:80/api/someEndpoint')
            .withDefaults({
                headers: {
                    'Accept' : 'application/json',
                    'X-Requested-With': 'Fetch'
                }
            })

非常感谢任何关于如何解决此问题的想法。

1 个答案:

答案 0 :(得分:4)

原来我错过了credentials

constructor(private client: HttpClient) {
        client.configure(cfg => {
            cfg
            .withBaseUrl('http://localhost:80/someEndpoint')
            .withDefaults({
                credentials: 'same-origin',
                headers: {
                    'Accept' : 'application/json',
                    'X-Requested-With': 'Fetch'
                }
            })