首页 > 其他 > 详细

客户端从服务器端接收或上传字符串

时间:2014-02-19 21:08:18      阅读:384      评论:0      收藏:0      [点我收藏+]

 public String ws(String p1, String p2, String p3, String p4){
  String MethodName = null;   //服务器接口方法名

//通过判断类型调用不同的接口方法
  if(p4 == "login"){
   //登陆判断
   MethodName = "UserIsExist";   
  }
  else if(p4 == "register"){
   //注册判断
   MethodName = "UserRegistration";
  }
  else if(p4 == "message"){
   //信息接收
   MethodName ="SendMessage";//要调用的webService方法
  }
  else if(p4 == "onlineDetails"){
   //在线搜索
   MethodName = "GetVideoInfo";
  }
 
  String NameSpace="http://tempuri.org/";   //web服务使用的命名空间
  String u="http://192.168.0.4:8099";   //请更换成你要访问的服务器地址//http://192.168.0.12:8002/WebService1.asmx
  String webService="/WebService/WebServiceMain.asmx";//webService路径  
  String soapAction=NameSpace+MethodName;
  String url=u+webService;//最终要访问的网址
  
    String result="";  //调用web服务后的返回值
    try{
     SoapObject request=new SoapObject(NameSpace,MethodName);//NameSpace
     //webService方法中的参数,这个根据你的webservice来,可以没有。
     //请注意,参数名称和参数类型,客户端和服务端一定要一致,否则将可能获取不到你想要的值
     if(p4 == "login"){
    //登陆判断
      request.addProperty("UserName", p1);
      request.addProperty("pass", p2);
   }
   else if(p4 == "register"){
    //注册判断
    request.addProperty("empUserName", p1);
      request.addProperty("pass", p2);
   }
   else if(p4 == "message"){
    //信息接收
    request.addProperty("struser", p1);
   }
   else if(p4 == "onlineDetails"){
    //在线搜索
    request.addProperty("strguid", p1);
   }
     
     //request.addProperty("_XmlString","/sdcard/" + xName + ".xml");
     //String s=ReadTxtFile("/mnt/sdcard/ZlibMST.gz");
        //xmlString:WebService方法参数名;s:参数值
     //request.addProperty("XmlString",s);
     
     SoapSerializationEnvelope envelope=new SoapSerializationEnvelope(
       SoapEnvelope.VER11);
     
     envelope.dotNet=true;//访问.NET的webservice
     
     envelope.setOutputSoapObject(request);
     
     HttpTransportSE ht=new HttpTransportSE(url);
     
     ht.call(soapAction, envelope);//调用call方法,访问webservice
     
     if(envelope.getResponse()!=null){
      SoapPrimitive response=(SoapPrimitive)envelope.getResponse();
      //如果要返回对象集合,在服务端可以将对象或集合序列化成json字符串返回,这边再反序列化成对象或集合
      result=response.toString();//这里获得了webService的返回值
     }
     return result;
    }catch(Exception e){
     return null;
    }
    
   }

客户端从服务器端接收或上传字符串

原文:http://www.cnblogs.com/lr19910618/p/3555611.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!