当前位置: 首页 > 面试题库 >

使用.getJSON获取Play商店应用详细信息时出现跨源阻止请求[CORS]错误

萧成文
2023-03-14
问题内容

所以基本上我是使用42matters.com APP Market API从Google
Play商店获取应用程序详细信息或信息,一切正常,并且我得到了JSON响应,但是当我在周末假期后回到办公室时,奇怪的错误来了,什么也没有返回。

我已经使用$ .getJSON函数,如:

var packageID = 'com.whatsapp';
   $.getJSON('https://42matters.com/api/1/apps/lookup.json?p='+packageID+'&access_token=accesstoken1234')
.done(function(appDetails) {
            $('#logo').html(JSON.stringify(appDetails));
        });

如前所述,这是返回数据,我能够相应地更改所有内容,但现在它无缘无故地给了我这个错误

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://42matters.com/api/1/apps/lookup.json?p=com.whatsapp&access_token=accesstoken1234. This can be fixed by moving the resource to the same domain or enabling CORS

我已经使用PHP启用了CORS,但没有任何反应,尝试更改apache的conf文件以在其中启用CORS,但是该服务不会因此而重启,所以我陷入了困境。

还有一件事,当我在浏览器中手动输入以上链接时,它确实提供了所需的结果。请帮我解决


问题答案:

CORS在浏览器端被阻止,不允许AJAX向另一个域请求数据。您应该联系42matters.com团队为您打开crossdomain.xml,例如CORS
jQuery AJAX请求,
或者有人可以发布格式正确的crossdomain.xml示例吗?

或AJAX跨域的解决方法是JSONP:jQuery
AJAX跨域,
但API应该支持这种请求。

最后一件事是不要使用AJAX从其他来源收集数据,如果它是移动平台,则应该具有本机HTTP Request对象来执行此操作



 类似资料:
  • 因此,当我试图使用React将数据发送到后端时,我遇到了这个错误。据我所知,我需要允许在后端和文件中进行通信。以下是我使用的一些链接: 无“访问控制允许源”-节点/Apache端口问题 访问控制允许起源头是如何工作的? 他们两个都有代码,但都没用。 到目前为止,我的服务器端代码如下: 这是我的客户端代码: 那么我错过了什么?我没有文件,但我都是在本地完成的,所以我不确定是否可以使用它。 在我看来,

  • 我也在应用程序根目录中使用。htaccess文件。(waleedahmad.kd.io/node)。

  • 我用buildozer android发布命令制作了一个发布apk。然后,我使用以下命令签名和zipalign我的apk。 genarate keystore file[before]-keytool-genkey-v-keystore myapp.keystore-alias myalias-keyalg RSA-keysize 2048-有效性10000 生成keystore文件[after]

  • 问题内容: 所以当我尝试使用React将数据发送到后端时,我遇到了这个错误。据我了解,我需要允许后端和文件中的通信。这是我使用的一些链接: 没有“访问控制允许来源”-节点/ Apache端口问题 [Access-Control-Allow- Origin标头如何工作?]http://codingdict.com/questions/8006) 他们两个都有代码,但是没有帮助。 到目前为止,我的服务

  • 从以下行代码输入: 如何从订单id获取WooCommerce订单详细信息?

  • 一、跨应用商店的来源分析痛点 由于Android/iOS的应用市场的限制,难以对下载前后的用户进行唯一识别,导致H5落地页的推广与APP下载转化只能追溯到应用市场的下载。如在微信朋友圈、微博投放的信息流广告;APP开屏广告、插屏广告;Banner、推荐位;二维码推广;H5分享下载等推广形式,大多都需要根据下载前后的注册信息匹配用户,难以衡量推广效果。 二、解决方案 你可以在H5落地页为分享链接或网