繁体   English   中英

jQuery Rest服务呼叫不起作用

[英]jQuery Rest Service Call is not working

我们拥有自己的Rest Web服务,该服务返回JSON,并且我们能够从浏览器以及基于浏览器的Rest客户端使用(GET)数据。

我们已经创建了一个基于JQuery(嵌入html)的rest客户端,它甚至无法使用浏览器访问具有相同信息的Web服务。 下面是代码片段。 仅在“错误”下的警报被调用,状态为0,statusText为空白。

$.ajax({
                url: 'http://localhost:8080/appcontext/user/1234',
                type: 'GET',
                dataType: 'json',
                success: function(data) { 
                        alert('GET completed'); 
                },
                error: function(data) { 
                    alert('GET failed STATUS ' + data.status  ); 
                    alert('GET failed TEXT   ' + data.statusText); 
                    }
                }); 

如果我将dataType更改为jsonp,则至少调用转到Web服务,但再次转到状态为200和statuText加载的“错误”。

请帮助哪里出了问题。 在Web服务方面,这看起来没有问题,因为我们可以使用其他方式(如Java代码,浏览器等)进行消费。JQuery调用存在问题。

发生这种情况是因为您可能正在从differentnet平台调用Web服务。。。这是一个跨源的,因此我们需要启用该功能

在web.xml中添加以下内容

<filter>
    <filter-name>cross-origin</filter-name>
    <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>cross-origin</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

并添加相应的jar文件:jetty-all

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM