【问题标题】:Framework 7 AJAX GET request not working on Phonegap Android build框架 7 AJAX GET 请求不适用于 Phonegap Android 构建
【发布时间】:2016-10-05 16:45:59
【问题描述】:

我的代码可以在网络浏览器上运行,但是当我将其部署在 Phonegap Android Build 上时,它就无法运行。这里有人知道怎么做吗?我使用 PHP 作为我的后端。

 $$('form.ajax-submit-onchange').on('submitted', function (e) {
   var formData = myApp.formToJSON('form.ajax-submit-onchange');
   var fullname = JSON.stringify(formData.name);
   var gender = JSON.stringify(formData.gender);
   var email = JSON.stringify(formData.email);
   var url = 'http://localhost/androidapi/public/insertuser';
   console.log(url);
   $$.get(url + '/'+fullname+ '/'+email+ '/'+gender, function (data) {
          console.log(data + 'success');
   });
 });

【问题讨论】:

  • 在什么情况下不起作用?它根本不发送请求吗?还是 PHP 没有按照您期望的方式响应?你如何检查它是否返回正确的数据? (我没用phonegap所以不知道能不能查看console.log)
  • 在网络浏览器中它正在插入数据,但在移动构建 phonegap 桌面应用程序中我没有检查构建日志和 console.log(url);正在输出,除了 console.log(data + 'success');这意味着它不会去 $$get ajax 请求
  • 插入数据应该使用 POST 而不是 GET。但除此之外,我认为这可能与使用 localhost 的 url 有关。除非您在手机上运行服务器,否则您的“本地主机”位于计算机上,手机将无法直接连接到它。您可能必须将其设置为公共(至少对于您的网络)服务器,以便电话有连接的地方。怎么做,我不知道。希望其他人可以回答。我会坚持下去,因为它对我也有用。
  • 希望已经有人解决了这个案子
  • 我所做的只是更改了您提到的本地主机 IP 到我的计算机 ip 地址 var url = 'localhost/androidapi/public/insertuser';到 var url = '192.168.1.2/androidapi/public/insertuser';无论如何,谢谢你的线索。

标签: android ajax cordova get


【解决方案1】:

为了解决这个问题,我所做的只是将 URL 中的“localhost”更改为我的计算机 IP 地址。

var url = 'localhost/androidapi/public/insertuser';

改为

var url = '192.168.1.2/androidapi/public/insertuser';

这是我的参考:IONIC, Access-Control-Allow-Origin

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-11
    • 1970-01-01
    相关资源
    最近更新 更多