Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/199.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 调用简单web服务的简单Phonegap应用程序_Android_Web Services_Cordova_Xui - Fatal编程技术网

Android 调用简单web服务的简单Phonegap应用程序

Android 调用简单web服务的简单Phonegap应用程序,android,web-services,cordova,xui,Android,Web Services,Cordova,Xui,我是Phonegap的初学者,我在MicrosoftVisualStudio2010中用两个简单的方法创建了一个简单的web服务。我想从我的android平台Phonegap应用程序中调用该服务中的一个方法。我使用的是xui库,这种方法xhr对我来说几乎是不可理解的。我读过很多关于这个话题的帖子,但我不知道该怎么做 我的web服务链接如下:http://localhost/testservice/Service1.asmx 这是我的web服务代码: [System.Web.Script.Serv

我是Phonegap的初学者,我在MicrosoftVisualStudio2010中用两个简单的方法创建了一个简单的web服务。我想从我的android平台Phonegap应用程序中调用该服务中的一个方法。我使用的是xui库,这种方法xhr对我来说几乎是不可理解的。我读过很多关于这个话题的帖子,但我不知道该怎么做

我的web服务链接如下:
http://localhost/testservice/Service1.asmx

这是我的web服务代码:

[System.Web.Script.Services.ScriptService]
public class Service1 : System.Web.Services.WebService
{

    [WebMethod]
    public string HelloWorld()
    {
        return "Hello World";
    }

    [WebMethod]
    public int Calculate(int firsNumber, int secundNumber)
    {
        return firsNumber + secundNumber;
    }
}
这是我应该测试该服务的方法:

function checkWebService() {
      var url = new "http://localhost/testservice/Service1.asmx?op=HelloWorld";
      x$('#test').xhr(url, {error: function(){alert("failed "+this.responseText)},
      callback: function(){
         alert("Success " + this.responseText);
       }
 });
我在点击按钮时调用这个方法,我总是得到“Success”文本的警告,而没有“response text”

可能我的url是错误的,但我不知道应该键入哪个url。 这是针对没有参数的“HelloWorld”方法,我也不知道如何使用参数调用方法

请提供任何帮助或解释。

查看文档(我不熟悉XUI),xhr用于获取标准网页/JSON web服务,当您调用标准web服务时,它将返回XML soap响应(它们是XML标记而不是HTML)。您需要解析此响应以获得所需的结果

一种简单的方法是更改web服务以返回JSON响应,然后在javascript中使用eval()为您提供对象的“类型化”视图。徐汇举例

如果您是新手,您可能会发现JQuery比XUI具有更大的文档/社区支持

顺便说一句,“Localhost”是一个环回地址,本质上意味着“这台”计算机,所以即使它能工作,它也会尝试连接到移动设备(或模拟器)上的Web服务,而不是您通常通过URL连接到的服务器。

查看文档(我不熟悉XUI),xhr用于获取标准web页面/JSON web服务,当您调用标准web服务时,该服务将返回XML soap响应(它们是XML标记而不是HTML)。您需要解析此响应以获得所需的结果

一种简单的方法是更改web服务以返回JSON响应,然后在javascript中使用eval()为您提供对象的“类型化”视图。徐汇举例

如果您是新手,您可能会发现JQuery比XUI具有更大的文档/社区支持


顺便说一句,“Localhost”是一个环回地址,本质上意味着“这台”计算机,因此即使它工作了,它也会尝试连接到移动设备(或模拟器)上的Web服务,而不是您通常通过URL连接到的服务器。

我取得了一些进展。我更改了我的url。Android emulator不理解url中的localhost,我必须编写数字地址。现在我的网址是。有更好的解释()。现在,就像答案一样,我在url上获得了整个html页面,其中包含html标记和所有内容。我仍然不知道如何得到方法的结果。你的起始页是什么样子的?我已经取得了一些进展。我更改了我的url。Android emulator不理解url中的localhost,我必须编写数字地址。现在我的网址是。有更好的解释()。现在,就像答案一样,我在url上获得了整个html页面,其中包含html标记和所有内容。我仍然不知道如何只获得方法的结果。您如何开始页面?我需要具有不同类型实现的RestFul WCF web服务,而不是SOAP。这是帮助我实现RestFul服务的链接:在实现过程中,我遇到了一些其他问题,对于某些人来说,它可能会很有用:我需要的是RestFul WCF web服务,它具有不同类型的实现,而不是SOAP。这是帮助我实现RestFull服务的链接:在实现过程中,我遇到了一些其他问题,对于某些人来说,它可能会很有用: