连接移动数据时 Ajax 不起作用

Posted

技术标签:

【中文标题】连接移动数据时 Ajax 不起作用【英文标题】:Ajax not work when connect with mobile data 【发布时间】:2018-05-09 02:27:13 【问题描述】:

我的网站在 PC 上运行良好,但是当我尝试使用“移动数据”从移动设备打开我的网站时,ajax 请求不起作用。但 ajax 可用于 Wifi 连接。

来自 PC chrome 的 Ajax:工作 来自移动 chrome 的 Ajax:工作(在 Wifi 上) 来自移动 chrome 的 Ajax:不工作(在移动数据上)

这不仅是我的网络问题,而且我的客户移动数据也无法使用。

我的网站中只有 1 个 js 文件,即 JQuery 1.12.4。

我也在使用 Cloudfare CDN。

这是我的代码。

$(document).ready(function()
  get_data();
);


function get_data()
 var link = "URL";
  var pair = "value"; 
  var period = "value"; 

  $.ajax(
    url:link,
    type: "POST",
    data :  pairID:pair,period:period 
  ).done(function(data)
     // response in html Table

  );   

PC chrome 中的响应标头:

Cache-Control:max-age=2592000, private, must-revalidate
Cache-Control:no-store, no-cache, must-revalidate
CF-RAY:3c332594e5340e12-MXP
Connection:keep-alive
Content-Encoding:gzip
Content-Type:text/html; charset=UTF-8
Date:Sat, 25 Nov 2017 08:13:07 GMT
Expires:Thu, 19 Nov 1981 08:52:00 GMT
Pragma:no-cache
Server:cloudflare-nginx
Set-Cookie:ci_session=879fa6e9652b84d71b75a03f5b760c42339a501b; expires=Sat, 25-Nov-2017 10:13:06 GMT; Max-Age=7200; path=/; HttpOnly
Transfer-Encoding:chunked
Vary:Accept-Encoding,User-Agent
X-Powered-By:php/7.0.23

请求标头:

Accept:*/*
Accept-Encoding:gzip, deflate
Accept-Language:en-US,en;q=0.9
Connection:keep-alive
Content-Length:20
Content-Type:application/x-www-form-urlencoded; charset=UTF-8
Cookie: etc
Host: www.example.com
Origin:http://www.example.com
Referer:http://www.example.com/ind?id=1
User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36
X-Requested-With:XMLHttpRequest

【问题讨论】:

试试hot spot share你的移动数据,并通过你的移动数据将桌面连接到网络。 我尝试使用热点,wesbite 加载,但 ajax 不起作用,也没有错误返回,我测试其他站点,也 ajax 在该站点上不起作用.. 所以你说,所有网站 ajax 都包括你的网站不支持移动数据,对吧?所以第二次尝试,使用代理,看看它是否有效。并检查 chrome 等中的 network 选项卡,查看 ajax 调用返回码是 200 还是其他? 我刚重新启动我的手机,ajax 开始工作,但是我的客户给我发电子邮件说 ajax 数据不工作,.. 我如何在我的客户手机中修复? :( 如果 ajax 工作结束,请忽略该电子邮件 【参考方案1】:

因为您可以使用 .htaccess 中的 ip 来获取、发布、放置。请重命名它 .htaccess_old 它应该适用于所有设备。 #干杯

【讨论】:

以上是关于连接移动数据时 Ajax 不起作用的主要内容,如果未能解决你的问题,请参考以下文章

绑定数据库时,Devbridge 自动完成 ajax 不起作用

尝试从 localhost 向 localhost:8000 发送数据时,ajax 调用不起作用

Ajax post方法不起作用

在使用 POSTMAN 时,AJAX POST 请求不起作用

当内容'通过 AJAX 动态创建时,分页后不起作用

使用 $.ajax 加载 XML 不起作用 [重复]