需要帮助使用SMMRY API

时间:2016-12-22 00:59:50

标签: javascript json ajax api smmry

我正在使用http://smmry.com/api作为一个小项目。我是AJAX的新手并且在使用它时遇到了麻烦。这是我到目前为止所做的:

var a = $.ajax({
  type:'POST',
  url:'http://api.smmry.com/&SM_API_KEY=XXXXXXXX',
  headers: {'Authorization': '["Expect:"]'},
  data: {'SM_URL':'https://en.wikipedia.org/wiki/Human%E2%80%93computer_interaction'},
  contentType:'application/json',
  dataType: 'json',
});

console.log(a);

我得到的错误:

  

XMLHttpRequest无法加载http://api.smmry.com/&SM_API_KEY=XXXXXXXX。对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点'null'访问。

我很确定它与标题有关。我不知道该怎么做,如果有人可以帮助我,我会非常感激!

1 个答案:

答案 0 :(得分:0)

您遇到的错误与CORS有关。 XMLHttpRequest发送预检请求,SMMRY API不支持该预检请求,并且需要在服务器端启用。你能做什么呢?

您可以通过服务器与他们的API通信,例如一个简单的Node服务器。 然后,您将XMLHttpRequest发送到您自己的服务器,您可以通过允许CORS(这是Node / Express服务器中的一行简单代码)允许预检请求,并将请求转发回SMMRY API并将响应发送回你的网站。这个过程被称为"代理"。