执行对服务器的请求时出现“Access-Control-Allow-Origin”错误

时间:2017-05-30 07:10:24

标签: ajax rest

在我的服务器上运行RESTful Web服务:

    @GET
    @Path("/{deviceId}/dashboard")
    @Produces(MediaType.APPLICATION_JSON)
    public String getDashboard(@PathParam("deviceId") int id){
        List<Integer> dataNachId = new ArrayList<>();


        dataNachId = allData.get(Integer.toString(id));

        if(dataNachId==null){
            return "No Data";
        }
        return "{data:"+dataNachId.toString()+"}";
    }

我想通过调用ajax请求来检索返回数据,如下所示(使用jsfiddle):

$(function() {
  $.ajax({
    type: 'GET',
    url: 'http://localhost:8085/WSDemo/webapi/data/1/dashboard',
    success: function() {
      console.log('success', data);
    }
  });
});

但我在控制台上看到的是“Access-Control-Allow-Origin”错误。任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

只需在您发送的ajax请求中添加dataype和crossdomain即可。

  $.ajax({
    type: 'GET',
    crossDomain: true,
    dataType: 'jsonp',
    url: 'http://localhost:8085/WSDemo/webapi/data/1/dashboard',
    success: function() {
      console.log('success', data);
    }
  });