首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >cordova跨域请求

cordova跨域请求
EN

Stack Overflow用户
提问于 2014-12-30 14:23:10
回答 1查看 517关注 0票数 0

我想创建一个用于调试的cordova通用客户端。但是我面临着跨域请求的问题。我的案例是: 1.我将我的源代码(html代码)部署在web服务器A上。2.我的后端数据源来自服务器B。3.我创建了一个cordova应用程序,并在设备或模拟器上运行。应用程序从服务器A访问url并打开应用程序页面,一切正常。但是当我的js代码从Server B读取数据时,所有的请求都失败了。我猜这是由于跨域限制造成的。

有人有解决这个问题的办法吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2014-12-30 15:06:24

既然您的初始HTTP请求通过并返回HTML,那么来自Cordova的连接似乎正在工作,至少对于服务器A是这样的。

您可以尝试将临时“内容”上传到服务器A,您可以尝试使用AJAX调用来获取该服务器A。

如果成功通过,则可以确定故障出在服务器B上,且CORS在前端工作正常。在这种情况下,您可以尝试从web客户端等访问A&B,以查看响应头中可能存在的差异。在这种情况下,服务器B可能缺少Access-Control-Allow-Origin:*报头。尝试将其添加到您的服务器配置或尝试JSONP。另外,如果您只允许使用以下命令连接到服务器A,请读取您的config.xml

代码语言:javascript
运行
复制
<access origin="<server A>"/>

在这种情况下,您显然也需要允许服务器B。

如果上失败,那么可以使用的资源就少了很多,我只能建议您研究一下像enable-cors.org这样的资源,这些资源演示了如何实际允许CORS。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27700572

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档