extjs - Okta AJAX 出错 - ExtJs 中没有“Access-Control-Allow-Origin”标头
问题描述
Ext.Ajax.request({
url: 'https://dev-516799.oktapreview.com/api/v1/users?limit=200',
method: 'GET',
Accept: 'application/json',
'Access-Control-Allow-Origin': '*',
headers: {
'Authorization': 'SSWS Token'
'Content-Type': 'application/json',
'Access-Control-Allow-Origin': '*',
//'Access-Control-Allow-Methods': 'GET'
},
scope: this,
cleanup: function () {
view.setLoading(false);
},
success: function (response) {
}
但我收到错误,因为“对预检请求的响应未通过访问控制检查:请求的资源上不存在‘Access-Control-Allow-Origin’标头”
解决方案
Access-control: Allow-Origin
标头是一项安全功能,必须在来自服务器的回复中启用,而不是在对服务器的请求中启用。
在你的情况下,你是在 Okta 的摆布之下。如果您向他们提供允许的 URL,他们有一些支持 CORS 的 API,而另一些则不支持。您无法直接从 JavaScript 代码访问 Okta API,除非 API 被标记为启用 CORS,并且您已将 URL 添加到 Okta 管理面板中启用 CORS 的 URL 列表中。如果您需要未标记的 API 或从任意 URL 访问,您可能必须在自己的服务器后端创建一个包装器,将来自前端的请求中继到 Okta 服务器。
推荐阅读
- python - 如何使用 Keras ImageDataGenerator 预测单个图像?
- reactjs - Jhipster Azure AD 访问令牌
- python-3.x - 对包含字母数字值的列表进行排序
- javascript - 窗口对象的构造函数是什么?
- javascript - 从嵌套对象创建一个对象数组
- javascript - 如何单独设置数组元素的样式
- intellij-idea - Intellij - 无法为对象堆保留足够的空间 (2020.2)
- javascript - Javascript如何知道当前用户?会话变量不起作用?Uncaught (in promise) ReferenceError: require is not defined
- amazon-web-services - AWS Glue 表映射数据类型,用于任意数量的字段和面临的挑战
- javascript - 向 javascript 对象添加空键、值对