欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

HttpClient通过GET和POST获取网页内容,httpclientget,中国银行支付网关---银

来源: javaer 分享于  点击 3804 次 点评:114

HttpClient通过GET和POST获取网页内容,httpclientget,中国银行支付网关---银


中国银行支付网关---银行回调的接口

最简单的HTTP客户端,用来演示通过GET或者POST方式访问某个页面

/** * 中国银行支付网关---银行回调的接口 * @svncode <a href="svn://10.210.71.10/sinapay_bank/src/java/cn/com/sina">svn://10.210.71.10/sinapay_bank/src/java/cn/com/sina * @package cn.com.sina.pay.Bank.BOC * @author yuchao1@staff.sina.com.cn * @date 20101014 * @access limited by password * @reference cn.com.sina.pay.ICBC *  */import java.io.*;import java.util.*;import org.jdom.Document;import org.jdom.Element;import org.jdom.Namespace;import org.jdom.JDOMException;import org.jdom.input.SAXBuilder;import org.xml.sax.InputSource;import org.apache.commons.httpclient.*;import org.apache.commons.httpclient.methods.*;import org.apache.commons.httpclient.methods.PostMethod;import org.apache.commons.httpclient.params.HttpMethodParams;/** * 最简单的HTTP客户端,用来演示通过GET或者POST方式访问某个页面 * @author yuchao */public class HttpClient1{    public static void main(String[] args) throws IOException    {        String merchantNo = "104110053004253";        String orderNo = "101023416806";        String signData = "SDJFALSF";        HttpClient client = new HttpClient();            //使用POST方法            PostMethod postMethod = new PostMethod("<a href="https://ebspay.boc.cn/PGWPortal/QueryOrder.do">https://ebspay.boc.cn/PGWPortal/QueryOrder.do");            /**             * 使用POST方式提交数据             */          NameValuePair[] orderInfo = {new NameValuePair("merchantNo",merchantNo),new NameValuePair("orderNos",orderNo),                  new NameValuePair("signData",signData),};          postMethod.setRequestBody(orderInfo);          client.executeMethod(postMethod);          int code = postMethod.getStatusCode();            if (code == HttpStatus.SC_OK){            String info = null;            info = new String(postMethod.getResponseBodyAsString());          }          /**           * 打印服务器返回的状态           */          System.out.println("the post return value"+postMethod.getStatusLine());          /**           * 打印结果页面           */          String response =   new String(postMethod.getResponseBodyAsString().getBytes("UTF-8"));           /**            * 打印返回的信息            */          System.out.println("the getBytes() xml is:"+response);           //打印返回的信息         String resCode = postMethod.getResponseBodyAsString();         System.out.println("the is my other xml:"+resCode);           //释放连接         postMethod.releaseConnection();     StringReader read = new StringReader(resCode);     InputSource source = new InputSource(read);     SAXBuilder sb = new SAXBuilder();     try{        Document doc = sb.build(source);        Element root = doc.getRootElement();        System.out.println("the getName is:"+root.getName());        List jiedian = root.getChildren();        //获得XML中的命名空间(XML中未定义可不写)        Namespace ns = root.getNamespace();        Element et = null;        List orderList = null;        for (int i=0;i<jiedian.size();i++)        {            et = (Element)jiedian.get(i);            if(et.getName().equals("header")){                System.out.println(et.getChild("merchantNo", ns).getText());                System.out.println(et.getChild("exception", ns).getText());            }            if(et.getName().equals("body")){                orderList = et.getChildren();            System.out.println(et.getChild("orderTrans", ns).getChild("orderStatus").getText());            }        }        for (int i=0;i<orderList.size();i++)        {            et = (Element)orderList.get(i);            if(et.getName().equals("orderTrans")){                System.out.println(et.getChild("payTime", ns).getText());                           }        }        }catch(JDOMException e){            e.printStackTrace();      }catch(IOException e){            e.printStackTrace();        }   }}//该片段来自于http://byrx.net
相关栏目:

用户点评