如何在静态 Github 页面上发出 WolframAlpha 请求?

How to make WolframAlpha Request on static Github Pages?

我正在尝试查询 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: The Same Origin Policy disallows reading the remote resource at http://api.wolframalpha.com/v2/query?input=sqrt(100)&appid=. (Reason: CORS header 'Access-Control-Allow-Origin' missing)."

我知道在动态网站上我可以添加

Header set Access-Control-Allow-Origin "*"

到 .htaccess

但我不确定如何在静态站点上执行此操作。我读到 Allow-Access_origin 应该已经出现在 github 页中。

第二个答案在这里:Cross-Origin Resource Sharing on GitHub Pages

第二个答案在这里:Is there a way to enable CORS on Github pages?

如果这是一个小项目,您可以通过 crossorigin.me. Otherwise you'll have to run a server yourself that proxies requests to wolfram alpha and sets the Access-Control-Allow Origin header properly. You could even deploy one of these proxy servers on now.sh or heroku for free or cheap. I have a similar simple application github-issue-filer 路由您的 get 请求,从而正确设置 header 并将 POST 重新路由到 github 的 API。