我试图查询wolfram为我的网站做一些数学,然后显示结果。我的CORS有问题。我的代码:
var xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
callback(xmlHttp.responseText);
}
xmlHttp.open("GET", "http://api.wolframalpha.com/v2/query?input="+theUrl+"&appid=", true); // true for asynchronous
xmlHttp.send(null);
我的错误:
"Cross-Origin Request Blocked: Same Origin Policy禁止从http://api.wolframalpha.com/v2/query?input=sqrt(100)&appid=读取远程资源。(原因:CORS头'Access-Control-Allow-Origin'丢失)。"
我知道在一个动态的网站上我可以添加
Header set Access-Control-Allow-Origin "*"
. htaccess
但是我不确定如何在静态网站上做到这一点。我已经读到Allow-Access_origin应该已经存在于github页面。
第二个答案:GitHub页面跨域资源共享
这里的第二个答案:是否有一种方法可以在Github页面上启用CORS ?
如果这是一个小项目,您可以通过crosorigin .me路由您的get请求。否则,你将不得不自己运行一个服务器,代理请求到wolfram alpha,并设置正确的访问-控制-允许起源头。您甚至可以免费或廉价地在now.sh或heroku上部署这些代理服务器之一。我有一个类似的简单应用程序github-issue-filer,它正确设置标题并将post重新路由到github的API。