热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Ajaxjson从域获取数据-Ajaxjsongetdatafromdomain

Iamworkingonphonegapandtryingtogetlistofuserusingajaxcallbutmyfunctionisreturning

I am working on phonegap and trying to get list of user using ajax call but my function is returning nothing on mobile its working fine in browser

我正在使用phonegap,并试图通过ajax调用获取用户列表,但我的功能是在浏览器中不返回任何移动的功能。

here is the function and url data is in xml format

这是函数,url数据是xml格式

$(document).ready(function(){
$.ajax({
    type: "POST",
    url: "http://my_server_url/user/selectuser",
    dataType: 'jsonp',
    crossDomain: true,
    processData: true,
    cache: false,
    success: function(data)
    {
        alert("Success:"+data.detail[0].Username);
    },
    error: function(data){
        alert("Error:"+data);
    },
    statusCode: {
        404: function() {
            alert( "page not found" );
        }
    }
}); 
});

Thanks

谢谢

2 个解决方案

#1


1  

The general steps I go through for checking problems like this on mobile are:

我在手机上检查这类问题的一般步骤是:

  1. The simplest thing you can do is try pulling up the resource via a regular browser window on your phone and see what's different. Just type in the URL and see what happens. If you can't pull it down on a generic Chrome / Mobile Safari tab, the error may help you figure out what the problem is. If you can pull it down, the problem likely resides in your code (a typo in the URL perhaps). This won't work if you aren't doing a GET request, but it may at least help you figure out if your phone can reach your server.
  2. 你能做的最简单的事情就是通过你手机上的一个普通浏览器窗口打开资源,看看有什么不同。只需输入URL,看看会发生什么。如果你不能在普通的Chrome / Mobile Safari浏览器上打开它,这个错误可能会帮助你找出问题所在。如果可以将其下拉,那么问题很可能存在于代码中(可能是URL中的一个输入错误)。如果不执行GET请求,这将无法工作,但它至少可以帮助您确定您的手机是否可以到达您的服务器。
  3. Connect your device to your PC on USB and observe the request in a Safari/Chrome debugger's Network tab. You should probably be doing this all the time anyway, but it always seems to be my step #2.
  4. 将设备连接到USB上的PC上,并在Safari/Chrome调试器的网络选项卡中观察请求。无论如何,你应该一直这样做,但这似乎总是我的第二步。
  5. Set one breakpoint before your request is sent, another in the success handler and a third in the error handler. The request may be successful, but an error immediately after the response could be stopping your program. Or maybe the response text is not what you were expecting (a web page rather than a JSON stream.)
  6. 在发送请求之前设置一个断点,另一个在成功处理程序中,第三个在错误处理程序中。请求可能是成功的,但是响应之后的错误可能会导致程序停止。或者可能响应文本不是您所期望的(web页面而不是JSON流)。
  7. If you are doing a non-GET request (like you are here), you can try running your own AJAX request directly in the debugger console. If you duplicate the request exactly, it shouldn't give you any more information than watching the regular request in the network tab, but it does allow you to modify the request multiple times without recompiling your app. It can be a huge time-saver.
  8. 如果您正在执行一个非get请求(就像您在这里一样),您可以尝试在调试器控制台中直接运行您自己的AJAX请求。如果你准确地复制请求,它不应该比查看network选项卡中的常规请求提供更多的信息,但它确实允许你多次修改请求,而无需重新编译应用程序。

If your phone can't reach the resource at all (#1) then maybe you have a specialized local environment that your phone doesn't share. For example, you might be calling localhost or 127.0.0.1, which your phone will never reach (because these IP addresses have a special meaning on most networks and basically means 'me' or 'this computer'). Or maybe you're calling out to something like 192.168.xxx.xxx or 10.xxx.xxx.xxx, which your phone can't reach because it isn't on that private network (e.g if you are not on the same wifi). In this case, you have two options:

如果你的手机根本无法访问资源(第一条),那么你可能有一个你的手机无法共享的专门的本地环境。例如,您可能正在调用localhost或127.0.0.1,而您的手机将永远无法访问它们(因为这些IP地址在大多数网络上都有特殊的含义,基本上是指“我”或“这台计算机”)。或者你可能在喊192。168。xxx。xxx或10. xxx.xxx。xxx,你的电话无法到达,因为它不在那个私有网络上(e。g如果你不在同一个wifi上)。在这种情况下,你有两个选择:

  1. figure out how to expose those resources to outside requests, or
  2. 找出如何将这些资源公开给外部请求,或者
  3. get your phone into your network environment. In extreme cases, I've actually had to build my own DNS server, change my phone's networks settings to use that, and redirect requests going to specific domain names.
  4. 让你的手机进入你的网络环境。在极端情况下,我实际上必须构建自己的DNS服务器,更改手机的网络设置以使用它,并将请求重定向到特定的域名。

#2


0  

With Phonegap version "Cli-5.2.0", whitelist plugin need to be use to successfully make ajax call on Android. Add below mentioned line in config.xml to use whitelist plugin with Phonegap cloud build.

使用Phonegap版本的Cli-5.2.0,需要使用whitelist插件成功地在Android上调用ajax。在配置中添加下面提到的行。使用whitelist插件和Phonegap云构建。





Check https://github.com/apache/cordova-plugin-whitelist for whitelist plugin description

查看https://github.com/apache/cordova-plugin-whitelist以获得whitelist插件的描述


推荐阅读
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 本文介绍了在MFC下利用C++和MFC的特性动态创建窗口的方法,包括继承现有的MFC类并加以改造、插入工具栏和状态栏对象的声明等。同时还提到了窗口销毁的处理方法。本文详细介绍了实现方法并给出了相关注意事项。 ... [详细]
  • JavaScript和HTML之间的交互是经由过程事宜完成的。事宜:文档或浏览器窗口中发作的一些特定的交互霎时。能够运用侦听器(或处置惩罚递次来预订事宜),以便事宜发作时实行相应的 ... [详细]
  • React基础篇一 - JSX语法扩展与使用
    本文介绍了React基础篇一中的JSX语法扩展与使用。JSX是一种JavaScript的语法扩展,用于描述React中的用户界面。文章详细介绍了在JSX中使用表达式的方法,并给出了一个示例代码。最后,提到了JSX在编译后会被转化为普通的JavaScript对象。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 本文分享了一个关于在C#中使用异步代码的问题,作者在控制台中运行时代码正常工作,但在Windows窗体中却无法正常工作。作者尝试搜索局域网上的主机,但在窗体中计数器没有减少。文章提供了相关的代码和解决思路。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Python字典推导式及循环列表生成字典方法
    本文介绍了Python中使用字典推导式和循环列表生成字典的方法,包括通过循环列表生成相应的字典,并给出了执行结果。详细讲解了代码实现过程。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • ZSI.generate.Wsdl2PythonError: unsupported local simpleType restriction ... [详细]
  • 本文介绍了Perl的测试框架Test::Base,它是一个数据驱动的测试框架,可以自动进行单元测试,省去手工编写测试程序的麻烦。与Test::More完全兼容,使用方法简单。以plural函数为例,展示了Test::Base的使用方法。 ... [详细]
  • Html5-Canvas实现简易的抽奖转盘效果
    本文介绍了如何使用Html5和Canvas标签来实现简易的抽奖转盘效果,同时使用了jQueryRotate.js旋转插件。文章中给出了主要的html和css代码,并展示了实现的基本效果。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
author-avatar
lumanman158
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有