gpt4 book ai didi

jquery - 403 来自 PhoneGap Desktop 的 jQuery.ajax 请求的禁止响应

转载 作者:行者123 更新时间:2023-12-01 04:43:27 25 4
gpt4 key购买 nike

我设置了一个 PhoneGap 项目并通过 PhoneGap Desktop 启动它。在此项目中,我调用以下 jQuery 方法:

$.ajax({
type: 'GET',
url: 'http://api.fixer.io/latest',
dataType: 'json',
success: function(data){
exchangeRates = data;
displayData(exchangeRates);
}
})

一旦我使用按钮触发它,我就会收到 403“禁止”响应。请求的URL为:http://192.168.178.40:3000/proxy/http://api.fixer.io/latest

这是 PhoneGap Desktop 加载应用程序和代理的本地服务器地址 (192.168.178.40:3000),这似乎也来自 PhoneGap。发送的请求 header 如下所示:

Host: 192.168.178.40:3000
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:42.0) Gecko/20100101 Firefox/42.0
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: de,en-US;q=0.7,en;q=0.3
Accept-Encoding: gzip, deflate
Referer: http://192.168.178.40:3000/
Cookie: connect.sid=s%3AhoA3oe0JbAdmGQ4Z6bYlRuFa.oDM1qjeHCadzwfSmYy%2BFabG0b22OH0ZqRgVuLMlcCL8
Connection: keep-alive

响应头如下:

Connection: close
Content-Type: text/plain
Date: Fri, 20 Nov 2015 12:07:23 GMT
Server: nginx/1.4.6 (Ubuntu)
Status: 403 Forbidden
Transfer-Encoding: chunked

当我尝试打开请求的 URL 时,它会提供我想要的 JSON。

为什么我会收到 403?有人可以帮忙吗?

[成功后编辑]
好吧,看来我在我设置的 PhoneGap 项目中遇到了问题,因为 Simon Pricketts这个建议似乎是正确的。
所以我建立了一个全新的项目。这次是一个没有 PhoneGap 覆盖的直接 Cordova 5.4.0 项目。然后我再次尝试了西蒙斯的建议,瞧 ---> 这次成功了!

结论:PhoneGap 项目的 config.xml 与 Content-Security-Policy 相结合导致应用程序出现问题,从而导致 403 错误。由于我对 PhoneGap 不太熟悉,所以我直接尝试了 Cordova,效果很好。

最佳答案

如果使用 Cordova 5,您可能需要设置内容安全策略元标记;如果使用 iOS9 或将来将应用移至 iOS 时,您可能需要另外配置应用传输安全性。

我有一篇博客文章演示了如何执行此操作,并且实际上也使用了您尝试使用的相同数据源 - 您可以阅读此 here .

如果这是你的问题,你需要在你的index.html中添加类似的内容:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; connect-src http://api.fixer.io">

注意:connect-src 子句指定对 http://api.fixer.io 的访问

关于jquery - 403 来自 PhoneGap Desktop 的 jQuery.ajax 请求的禁止响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33826761/

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