在本地主机上运行两个 grails 应用程序时如何解决跨域错误

Posted

技术标签:

【中文标题】在本地主机上运行两个 grails 应用程序时如何解决跨域错误【英文标题】:How to solve cross domain errors when running two grails apps on localhost 【发布时间】:2014-04-27 20:02:40 【问题描述】:

我正在尝试在其他战争/战争也在运行的情况下运行我的项目。例如,我们有一个战争/耳朵,它有我想访问的遗留网络服务。我的目标是使用我的运行应用程序部署那些现有的战争/耳朵。我可以分别部署这两个,作为端口 8081 上的 grails run-app 和端口 8080 上的 jboss。问题是当我尝试执行 ajax POST、DELETE 或 PUT 时出现跨域错误,因为每个应用程序都是独立的港口。有没有办法使用 run-app 让我的 grails 项目位于 localhost:8080/grails 并且 web 服务位于 localhost:8080/webservices

环境:Grails 2.1.1

服务器:Jboss(首选)或 vFabric tc 服务器(通过放入现有的战争/战争)

【问题讨论】:

让您对 localhost:8080/grails 中的方法进行 ajax 调用,该方法像代理一样工作,并且该方法从其他端口获取结果,这可能是一种解决方法,如果它只是关于跨域源策略 【参考方案1】:

我不相信您可以在同一个端口上“运行应用程序”两个项目,因为您正在运行嵌入式容器。但是,您可以做的是查看 Grails CORS 插件,该插件将允许其他域在运行应用程序或其他情况下访问您的 grails 应用程序。

http://grails.org/plugin/cors

【讨论】:

以上是关于在本地主机上运行两个 grails 应用程序时如何解决跨域错误的主要内容,如果未能解决你的问题,请参考以下文章

本地主机上的 recv() 数据丢失

会话在本地主机上的两个 Flask 应用程序之间共享

使 grails 在本地运行(内联网)

如何在本地主机上运行 Apache Wild Card 脚本?

在本地主机上运行 php artisan serve 命令时出错

本地主机上的连接被拒绝