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'标头”
答案 0 :(得分:1)
Access-control: Allow-Origin
标头是一项安全功能,必须在服务器的回复中而不是在对服务器的请求中启用。
示例:ExtJS - Adding headers to AJAX store
就您而言,您由Okta摆布。 They have some APIs that support CORS if you provide them with the allowed URLs,以及其他没有的。除非将这些API标记为启用了CORS,并且您已将URL添加到Okta管理面板中的启用CORS的URL列表中,否则您无法直接从JavaScript代码访问Okta API。如果您需要未标记的API或从任意URL进行访问,则可能必须在自己的服务器后端中创建一个包装器,以将请求从前端转发到Okta服务器。