调用ajax调用localhost时出现Access-Control-Allow-Origin错误

时间:2017-08-17 15:14:25

标签: javascript jquery json ajax cors

我尝试通过GET方法发送请求,并从以下网址中托管的服务器获取JSON响应。我需要发送这样的请求。

http://localhost:9763/services/PMT_Dashboard/getid/222

我写了一个HTML页面并将其包含在javascript文件中,其中包含ajax调用。代码被遵循。

function loadDoc(){
$.ajax({
        url: 'http://localhost:9763/services/PMT_Dashboard/getid/222',
        beforeSend: function(xhr) {
             xhr.setRequestHeader("Accept", "Application/json")
        }, success: function(data){
            alert(data);
        }
})}

但在控制台中,它表示跟随错误,

  

index.html:1 XMLHttpRequest无法加载http://localhost:9763/services/PMT_Dashboard/getid/222。对预检请求的响应没有通过访问控制检查:否'访问控制 - 允许 - 来源'标头出现在请求的资源上。起源' null'因此不允许访问。

请帮助我,我错了,并给我一个解决方案来解决这个问题。 我想在本地运行服务器和客户端。

1 个答案:

答案 0 :(得分:0)

如果在JS中实现,请将以下代码段放在API的代码中( localhost:9763 / services / PMT_Dashboard / getid / 222 )。

if (request.method === 'OPTIONS') {
    response = response.set('Access-Control-Allow-Origin', '*')
      .set('Access-Control-Allow-Methods', 'GET, POST, PUT');
  }