Android Soap通信(Java)
Soap通信とは?
プロトコルスタイル、単純オブジェクトアクセスプロトコルの弱者、セキュリティレベルが厳格で、成功/繰り返し実行ロジックは、最初から最後まで信頼性を提供し、ACIDを遵守し、データの変形を減らし、定義を明確にした.
XMLベースのメッセージのプロトコルは、HTTP、HTTPS、SMTP等によりコンピュータネットワーク上で交換される.
SOAPはWebサービスが基本情報を伝達する基礎である.SOAPにはいくつかの形式のメッセージ・モードがありますが、通常はリモート・プロシージャ・コール(RPC)モードであり、クライアントからサーバにメッセージを要求し、サーバはすぐにメッセージに応答します.SOAPはXML−RPCとWDDXにおける封筒/ヘッド/バルクからなる構造と伝送と相互中立性の概念をもたらした.
SOAPは,XMLをベースにタイトルと本体を組み合わせたデザインモデルとして設計されている.見出しはオプションで、重複、セキュリティ、トランザクションを情報とするメタデータ情報があります.マスターセクションは、主な情報の大部分に関連しています.
AndroidでのSoap通信
ksoap 2ライブラリ/SoapObjectの使用
1.宣言変数(WSDLの情報)
要求ごとにSOAP要求テンプレートを作成します.
//SOAP 통신을 위한 변수
private static final String NAMESPACE = "https://api.authorize.net/soap/v1/";
private static final String URL ="https://apitest.authorize.net/soap/v1/Service.asmx?wsdl";
private static final String SOAP_ACTION = "https://api.authorize.net/soap/v1/AuthenticateTest";
private static final String METHOD_NAME = "AuthenticateTest";
2.Soapオブジェクト作成後のパラメータ入力
request.addProperty("sType", sType); -> 変数名/パラメータ値の転送
//request 설정
request = new SoapObject(NAMESPACE, METHOD_NAME);
request.addProperty("sType", sType);
request.addProperty("sInputType", "JSON");
request.addProperty("sOutputType", "JSON");
request.addProperty("sEncYn", "N");
//createJson, putJson
request.addProperty("sParam", jsonObject.toString());
// Envelope 설정
envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
envelope.setOutputSoapObject(request);
envelope.dotNet = true;
3.Webサービスを呼び出す
try {
// 웹서비스 호출
HttpTransportSE androidHttpTransport = new HttpTransportSE(URL, 2000);
androidHttpTransport.call(SOAP_ACTION, envelope);
// 웹서비스 응답
SoapPrimitive soapPrimitive = (SoapPrimitive) envelope.getResponse();
result = envelope.getResponse().toString();
} catch (IOException e) {
e.printStackTrace();
} catch (XmlPullParserException e) {
e.printStackTrace();
}
}
Reference
この問題について(Android Soap通信(Java)), 我々は、より多くの情報をここで見つけました https://velog.io/@hyejiseo-dev/Android-Soap-통신テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol