gpt4 book ai didi

javascript - 针对 REST API 的授权会引发错误 : 401 (No credentials found the request.)

转载 作者:行者123 更新时间:2023-11-29 23:46:24 27 4
gpt4 key购买 nike

我想针对 HP Alm Rest API 进行授权,我认为这“应该”有效,但它没有:

function performSignIn(){

let headers = new Headers();

headers.append('Content-Type', 'application/json');
headers.append('Accept', 'application/json');
headers.append('Authorization', 'Basic ' + base64.encode(username + ":" + password));

fetch(sign_in, {mode: 'no-cors', method:'POST', headers: headers})
.then(response => response.json())
.then(json => console.log(json))
.catch(error => console.log('Authorization failed : ' + error.message));
}

我收到了一些奇怪的错误信息:

401(没有找到请求的凭据。)

这是来自 HP 文档的示例,使用 XMLHttpRequest 完成: http://alm-help.saas.hpe.com/de/12.53/api_refs/REST/webframe.htm#signin-out_example.htm

有什么想法吗?我看不出有什么问题。

非常感谢!

最好的问候,丹尼尔

最佳答案

fetch(…) 默认情况下不发送凭据。你需要 explicitly specify they should be sent :

fetch(sign_in, {credentials: 'include' , method:'POST', headers: headers})
.then(response => response.json())
.then(json => console.log(json))
.catch(error => console.log('Authorization failed : ' + error.message));
}

此外,顺便说一句,您绝对不想指定 mode: 'no-cors'。其效果是告诉浏览器,阻止我的前端 JavaScript 访问此请求的响应。

关于javascript - 针对 REST API 的授权会引发错误 : 401 (No credentials found the request.),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43866258/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com