Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Json 从API CORS获取数据_Json_Ajax_Api_Cors_Jsonp - Fatal编程技术网

Json 从API CORS获取数据

Json 从API CORS获取数据,json,ajax,api,cors,jsonp,Json,Ajax,Api,Cors,Jsonp,我试图从不支持CORS的服务器获取json数据。我读到Jsonp是这种情况下的解决方案,但我仍然无法使其发挥作用: 我的代码: var headers = { 'Authorization': 'Bearer ' + 'token', 'Accept': 'application/json' }; function myCallbackFunction(data){ $('body').text(data.response); } $.ajax(

我试图从不支持CORS的服务器获取json数据。我读到Jsonp是这种情况下的解决方案,但我仍然无法使其发挥作用: 我的代码:

 var headers = {
  'Authorization': 'Bearer ' + 'token',
  'Accept': 'application/json'
};
function myCallbackFunction(data){
            $('body').text(data.response);
        }
$.ajax({
    type: "GET",
     headers : headers,
     url: "https://site/api/etc",
    dataType: "jsonp",
    success: function(data){console.log(data);},
    jsonp: false,
    jsonpCallback : "myCallbackFunction",
    error: function (xhr, ajaxOptions, thrownError) {
      alert(xhr.status);
      alert(thrownError);
    }
});
我明白了

错误:未捕获的语法错误:意外标记:

我知道这是因为服务器返回一个json数据,但我不知道如何更正,因为如果将数据类型更改为json,我会得到一个与CORS相关的错误:

无法加载XMLHttpRequest。对飞行前请求的响应未通过访问控制检查:请求的资源上不存在“访问控制允许来源”标头。因此,不允许访问源“”

这意味着服务器端不支持CORS 但我用的是邮递员,我不明白。 我尝试了很多其他的方法,但是可以得到数据。 请帮忙。 非常感谢。
附:我在tomcat服务器下

我将把对我有用的东西放在这里: 因此,我所做的是使用“okhttp”创建一个rest控制器,而不是使用ajax调用,这样就不会出现上下文创建问题,然后检索数据并使用js对其进行操作