Javascript jQuery/Ajax Rest api请求

Javascript jQuery/Ajax Rest api请求,javascript,jquery,ajax,rest,Javascript,Jquery,Ajax,Rest,我正试图从localhost向realla发出rest api请求,我有一个api密钥,可以通过PHP发出请求,但在使用ajax时遇到问题: var URL = "https://realla.co/api/v1/listings/search"; var usr = 'api'; var psw = 'hidden'; $.ajax({ type: "POST", dataType: "json", contentType: "application/json", url: U

我正试图从localhost向realla发出rest api请求,我有一个api密钥,可以通过PHP发出请求,但在使用ajax时遇到问题:

var URL = "https://realla.co/api/v1/listings/search";
var usr = 'api';
var psw = 'hidden';
$.ajax({
  type: "POST",
  dataType: "json",
  contentType: "application/json",
  url: URL,
  crossDomain: true,
  beforeSend: function(xhr) {
    xhr.setRequestHeader("Authorization", "Basic " + btoa(usr + ":" + psw))
  },
  success: function(result) {
    console.log('success');
  },
  error: function(req, status, err) {
    console.log('Something went wrong', status, err);
  }
});
返回错误

XMLHttpRequest cannot load https://realla.co/api/v1/listings/search. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://dw.dev' is therefore not allowed access. The response had HTTP status code 403.
我试图用解决这个问题,但仍然得到相同的信息

我添加了以下功能(运行Wordpress):

我尝试过其他API(Facebook),这很有效,但我想知道我是否遗漏了一些东西

Realla的文档很薄,但我怀疑我是否做错了什么

谢谢

让我们试试这个

它会起作用的

在请求的资源文件中添加头

 <?php

    header('Access-Control-Allow-Origin: *');
    header('Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS');
    header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token');
 ?>

问题是realla方面的。API防止通过ajax发出请求

为了使用API,您需要从服务器而不是客户端浏览器发出请求


很抱歉浪费了人们的时间,希望这个答案能帮助那些感觉自己的头撞在砖墙上的人。

在后端代码中添加“访问控制允许源代码”:*尝试了这个方法,但仍然得到相同的消息(为了清晰起见,我在原始问题中添加了代码)。
 <?php

    header('Access-Control-Allow-Origin: *');
    header('Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS');
    header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token');
 ?>