如何使用 Aurelia Fetch Client 查询受 Windows 身份验证保护的 API?
How can I use Aurelia Fetch Client to query an API protected by Windows Authentication?
我们有一个网络服务器为我们的 Aurelia 静态文件提供服务以及 API,该服务器受 NTLM 保护(使用 Integrated Windows OWIN) 上的身份验证。
当使用 Aurelia Fetch Client 时,我们可以毫无问题地成功访问 API。这是我们使用的配置:
constructor(private http: HttpClient){
http.configure(config => {
config
.withBaseUrl('api/')
.useStandardConfiguration();
});
然而,当我们使用 Aurelia Fetch Client 时,我们得到 401 (Unauthorized)
(似乎缺少授权 header)
constructor(private client: HttpClient) {
client.configure(cfg => {
cfg
.withBaseUrl('http://localhost:80/api/someEndpoint')
.withDefaults({
headers: {
'Accept' : 'application/json',
'X-Requested-With': 'Fetch'
}
})
非常感谢任何有关如何解决此问题的想法。
原来我漏了 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'
}
})
我们有一个网络服务器为我们的 Aurelia 静态文件提供服务以及 API,该服务器受 NTLM 保护(使用 Integrated Windows OWIN) 上的身份验证。
当使用 Aurelia Fetch Client 时,我们可以毫无问题地成功访问 API。这是我们使用的配置:
constructor(private http: HttpClient){
http.configure(config => {
config
.withBaseUrl('api/')
.useStandardConfiguration();
});
然而,当我们使用 Aurelia Fetch Client 时,我们得到 401 (Unauthorized)
(似乎缺少授权 header)
constructor(private client: HttpClient) {
client.configure(cfg => {
cfg
.withBaseUrl('http://localhost:80/api/someEndpoint')
.withDefaults({
headers: {
'Accept' : 'application/json',
'X-Requested-With': 'Fetch'
}
})
非常感谢任何有关如何解决此问题的想法。
原来我漏了 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'
}
})