Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 与Keyrock的CORS问题_Javascript_Fiware_Django Cors Headers - Fatal编程技术网

Javascript 与Keyrock的CORS问题

Javascript 与Keyrock的CORS问题,javascript,fiware,django-cors-headers,Javascript,Fiware,Django Cors Headers,我正在尝试将自定义应用程序与Keyrock Fiware Identity Manager集成。 流程如下所示: 用户单击登录按钮 他被重新安排到办公室 /oauth2/authorize/?response\u type=code&client\u id={clientid}&state=xyz&redirect\u uri=http:{ip}:{port} 用户插入他的凭证 身份验证后,他被重定向到我的应用程序,我在其中尝试检索令牌,如下所示: var reqData=“grant

我正在尝试将自定义应用程序与Keyrock Fiware Identity Manager集成。 流程如下所示:

  • 用户单击登录按钮
  • 他被重新安排到办公室
/oauth2/authorize/?response\u type=code&client\u id={clientid}&state=xyz&redirect\u uri=http:{ip}:{port}

  • 用户插入他的凭证
  • 身份验证后,他被重定向到我的应用程序,我在其中尝试检索令牌,如下所示:
var reqData=“grant\u type=authorization\u code&code=“+code+”&redirect\u uri=“+http:{ip}:{port};
var reqHeaders=新对象();
reqHeaders.Access Control Allow Headers=“内容类型、访问控制允许标题、访问控制允许来源、授权、X-Requested-With、来源、接受”,
reqHeaders.Access Control Allow Methods=“发布、获取、选项、删除、放置”,
reqHeaders.Access Control Allow Origin=“*”
reqHeaders.Access Control Expose Headers=“http://*/*”
reqHeaders.Authorization=“基本{token}”
reqHeaders.Content Type=“应用程序/x-www-form-urlencoded”
reqHeaders.X-Requested-With=“XMLHttpRequest”
$.ajax({
url:idmURL+'/oauth2/token',,
键入:“POST”,
数据类型:“json”,
跨域:是的,
数据:reqData,
标题:ReqHeader,
成功:功能(数据){
控制台日志(数据);
token=data.access_uToken;
}

});具有讽刺意味的是,我认为问题是由于您在请求中使用了用于响应的CORS头造成的:

  • 访问控制允许标头
  • 访问控制允许方法
  • 访问控制允许源
  • 访问控制公开头文件
因此预飞失败,因为服务器不允许这些,只有响应标头访问控制中提供的标头子集允许标头

从请求中删除这些


更多信息:

你说得对。删除这些字段一切正常。非常感谢。