接口交互方式:https指令方式交互
在日常开发过程中,比如商城对接银行的支付等功能时,会用到这种交互。一般系统支付对接银行的话,一般接口调用方式:https指令,htps页面,以及socket专线等。
代码:/**
* https指令方式提交
*
* @param xml 报文数据
*
*
*/
private String sendHttpsPost(String xml) {
// 发送https请求指定
ProtocolSocketFactory fcty = new MySecureProtocolSocketFactory();
Protocol.registerProtocol("https", new Protocol("https", fcty, 443));
// spdUrl:为请求地址 建议最好在properties文件里配置
PostMethod post = new PostMethod(spdUrl);
// 指定请求内容的类型
post.setRequestHeader("Content-type", "text/xml; charset=GBK");
// 添加xml字符串
post.setRequestBody(xml.toString());
spdblogs.info("https指令的请求报文========================" + xml.toString());
System.out.println("https指令的请求报文========================"
+ xml.toString());
// 创建 HttpClient 的实例
HttpClient httpclient = new HttpClient();
int result;
String xmlDoc = "";
try {
//
result = httpclient.executeMethod(post);
log.info("https请求结果=======" + result);
// 报文结果
xmlDoc = post.getResponseBodyAsString();
log.info("返回的XML报文结果=======" + xmlDoc);
System.out.println("result===========" + result);
System.out.println(post.getResponseBodyAsString());
} catch (IOException e) {
e.printStackTrace();
} finally {
// 释放连接
post.releaseConnection();
}
// 对返回的xml报文进行解析并返回对应的数据
return xmlElements(xmlDoc);
}注意:方法入参xml 为接口报文组装后的数据
xmlElements方法是对应接口返回的数据解析,
然后根据自己项目情况对应的返回数据 apache有httpclient类库啊。何以自己写。
页:
[1]