webservice date 怎么传值

2025-11-25 15:30:13

1、1.准备工作:

  在开始之前,有几个名词我们需要明白:

看一下下面的文件:

 1.红圈一:Action 在Ws的规范里,用来定义消息请求的地址,也就是消息发送到哪个操作方法里, 这个就我们要访问的方法;

 2.红圈二:命名空间,没有特别的含义,方便查找

 3.红圈三:表示的我们需要准备参数,后面是他们类型,这里都是String类型

webservice date 怎么传值

2、简单整理一下:

 访问接口需要以下四个变量:

private static final String NAMESPACE ="http://tempuri.org/";

private static String URL="http://******/seal.asmx";//不公开

private static final String METHOD_NAME ="logincheck";

private static String SOAP_ACTION ="http://tempuri.org/logincheck";

3、声明:

WebService是一种基于SOAP协议的远程调用标准,通过webservice可以将不同操作系统平台、不同语言、不同技术整合到一块。在Android SDK中并没有提供调用WebService的库,因此,需要使用第三方的SDK来调用WebService。PC版本的WEbservice客户端库非常丰富,例如Axis2,CXF等,但这些开发包对于android系统过于庞大,也未必很容易移植到Android系统中。因此,这些开发包并不是在我们的考虑范围内。适合手机的WebService客户端的SDK有一些,比较常用的有Ksoap2,可自行下载,导入即可;

webservice date 怎么传值

4、2.开始访问

  获取参数后

public void getLogin(String name,String pass) {

    try {

        System.out.println("rpc------");

        SoapObject rpc =new SoapObject(NAMESPACE, METHOD_NAME);           System.out.println("rpc"+ rpc);

        rpc.addProperty("username", name); 

        rpc.addProperty("password", pass);

        AndroidHttpTransport ht =new AndroidHttpTransport(URL);

        ht.debug =true;

        SoapSerializationEnvelope envelope =new SoapSerializationEnvelope(SoapEnvelope.VER11);

        envelope.bodyOut = rpc;

        envelope.dotNet =true;

        envelope.setOutputSoapObject(rpc); 

        ht.call(SOAP_ACTION, envelope);

        SoapObject result = (SoapObject) envelope.bodyIn;

        Toast.makeText(MainActivity.this, "ok----" + envelope.bodyIn.toString(), Toast.LENGTH_LONG).show();

        tv.setText("Return:" +envelope.bodyIn.toString());

        return;

    } catch (Exception e) {

        e.printStackTrace(); 

       Toast.makeText(MainActivity.this, "error-----"+e.toString(), Toast.LENGTH_LONG).show();//出现异常

        tv.setText("" + e.toString()); 

       Log.d("--------", e.toString());

    }

 }

5、 结果:

  成功访问接口,获取服务器返回值。

webservice date 怎么传值

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢