当我尝试用客户端凭据连接到Tapkey Web时,我收到以下错误消息:“CORS策略阻止了从源'https://login.tapkey.com/connect/token‘获取'null’的访问:请求资源上不存在‘访问控制-允许-原产地’头。如果不透明的响应满足您的需要,请将请求的模式设置为' No - CORS‘,以获取禁用的CORS资源”。
我的代码如下:
async function connection() {
try{
let response = await fetch('https://login.tapkey.com/connect/token', {
method:'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
},
body: new URLSearchParams({
'client_id': 'myclient_id',
'client_secret': 'myclient_secret',
'scope': 'read:owneraccounts read:core:entities write:core:entities write:grants',
'grant_type': 'client_credentials'
})
});
return response;
} catch(err){
return err;
}
};
async function main(){
let result = await connection4();
console.log(result);
};
main();你有解决办法吗?
发布于 2022-10-10 07:57:31
看起来,您正在浏览器中直接使用客户端凭据客户端。因为客户的秘密不能秘密储存在那里,所以不应该这样做。因此,不可能为这些客户端配置CORS。
对于浏览器身份验证,应该使用“带有PKCE的身份验证代码流”。对于这些客户端,可以配置CORS。
https://stackoverflow.com/questions/74007769
复制相似问题