加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webservice android

发布时间:2020-12-17 00:09:34 所属栏目:安全 来源:网络整理
导读:Webservice,服务器与客户端通信通过相互发送XML文件,首先是客户端向服务器发送XML文件, 服务器解析命令后返回相应操作,基于POST协议。在Android中也有相应轻量级的SOAP包,现在已经更新 到3.0版本,之前自己写了一个,最后落在XML解析,决定还是使用现成

Webservice,服务器与客户端通信通过相互发送XML文件,首先是客户端向服务器发送XML文件,

服务器解析命令后返回相应操作,基于POST协议。在Android中也有相应轻量级的SOAP包,现在已经更新

到3.0版本,之前自己写了一个,最后落在XML解析,决定还是使用现成包来开发项目。具体使用方法:

package com.hygame.soap;

import org.ksoap2.SoapEnvelope;
import org.ksoap2.serialization.SoapObject;
import org.ksoap2.serialization.SoapSerializationEnvelope;
import org.ksoap2.transport.HttpTransportSE;

public class FamobileSoap {

	public static String getRemoteInfo(String Pin_card,String serial_card) {
		// 命名空间
		String nameSpace = "http://tempuri.org/";
		// 调用的方法名称
		String methodName = "Galaxy_PaymentCard";
		// EndPoint
		String endPoint = "http://eway.mgates.vn/galaxycard/ws.asmx";
		// SOAP Action
		String soapAction = "http://tempuri.org/Galaxy_PaymentCard";

		// 指定WebService的命名空间和调用的方法名
		SoapObject rpc = new SoapObject(nameSpace,methodName);

		// <fa_account>string</fa_account>
		// <Pin_card>string</Pin_card>
		// <Serial_card>string</Serial_card>
		// <Card_type>string</Card_type>
		// <Username>string</Username>
		// <Signature>string</Signature>
		// <ChannelID>string</ChannelID>

		rpc.addProperty("fa_account","famobile_galaxy");
		rpc.addProperty("Pin_card","123456789012");
		rpc.addProperty("serial_card","12345678900123456789");
		rpc.addProperty("type_card","VMS");
		rpc.addProperty("UserName","bingo");
		rpc.addProperty("Signature",FamobilePay
				.MD5("famobile_galaxy12345678901212345678900123456789VMSbingo"));
		rpc.addProperty("ChannelID","0");

		// 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本
		SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(
				SoapEnvelope.VER10);

		envelope.bodyOut = rpc;
		// 设置是否调用的是dotNet开发的WebService
		envelope.dotNet = true;
		// 等价于envelope.bodyOut = rpc;
		envelope.setOutputSoapObject(rpc);

		HttpTransportSE transport = new HttpTransportSE(endPoint);
		try {
			// 调用WebService
			transport.call(soapAction,envelope);
		} catch (Exception e) {
			e.printStackTrace();
		}

		// 获取返回的数据
		SoapObject object = (SoapObject) envelope.bodyIn;
		String result = object.getProperty(0).toString();
		System.out.println(result);
		return result;
	}
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读