gpt4 book ai didi

java - 使用 AngularJS 进行跨域 $http 请求

转载 作者:行者123 更新时间:2023-12-02 08:23:33 34 4
gpt4 key购买 nike

我的主操作系统(Windows7 Pro)上运行着一个 Java 服务,我可以通过 http://localhost:8080/... 的浏览器访问它。它返回有效的 JSON 响应。

我还有一个SPA用 angularjs 编写,位于我的虚拟机上,我为它创建了一个虚拟主机(为了更舒适的访问)。虚拟机操作系统为Ubuntu Server 12.04.X LTS。

由于这些环境在网络方面是彼此分离的,因此我尝试通过本地计算机 IP 地址 X.X.X.X:8080 访问 Java 服务(通过终端进行 ping 操作确实发送了响应)。由于正常的 $http 使用不起作用,我尝试了此答案 How to load a cross-domain JSON with $http in angularjs 1.0.8 as it does with 1.2.0 中建议的解决方案,但要么它太旧,要么有其他问题,但当我尝试做同样的事情时,它就是不起作用。在控制台中我只看到以下内容

XMLHttpRequest 无法加载 http://X.X.X.X:8080/library/api/books。请求的资源上不存在“Access-Control-Allow-Origin” header 。因此,不允许访问源“http://dev.xxx”。

最佳答案

感谢大家的意见。不能说我的解决方案正确与否,但我得到了我期望的结果。

我合并了在这里找到的信息Filter requests for CORS与这个问题的答案Java / Jetty: How to Add Filter to Embedded Jetty 。我不确定如何添加过滤器,该过滤器将监听请求并相应地设置响应 header 。

希望该解决方案能够帮助那些可能遇到相同情况的人。

关于java - 使用 AngularJS 进行跨域 $http 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21766372/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com