我正在创建一个Chrome扩展程序,该扩展程序对返回JSON的外部网站进行API调用。该网站确实有response['Access-Control-Allow-Origin'] = '*'
这个网址,我可以在另一个非Chrome扩展程序应用程序中调用此功能,它完全正常。
我不确定问题是什么......
这是我的清单w /网址已更改
{
... omitted ...
"permissions": [
"http://example.com/items"
],
"content_scripts": [
{
"matches": ["http://*/*", "https://*/*"],
"js": ["javascripts/jquery.min.js", "javascripts/base.js"]
}
]
}
这是尝试使用CORS来测试/解决问题:
xhr = createCORSRequest("GET", url)
throw new Error("CORS not supported") unless xhr
xhr.setRequestHeader('Content-Type', 'application/json')
xhr.onreadystatechange = () ->
if xhr.readyState == 4 && xhr.status == 200
alert('Tested OK')
text = xhr.responseText
alert('Response from CORS request to ' + url + ': ' + text)
xhr.send()
createCORSRequest =(method,url) - > xhr = new XMLHttpRequest() 如果" withCredentials" xhr xhr.open方法,url,true 否则,除非typeof XDomainRequest是" undefined" xhr = new XDomainRequest() xhr.open方法,网址 其他 xhr = null XHR
上面的代码到位后,我收到以下错误:
Failed to load resource: the server responded with a status of 403 (Forbidden)
任何帮助将不胜感激