HttpComponents 向支付寶請求

package com.quincy;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.http.Consts;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

 
 
public class HttpComponentsTest extends HttpServlet {
 
  /**
  * 
  */
 private static final long serialVersionUID = 1L;
 @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp)
          throws ServletException, IOException {
  doPost(req, resp);
     
  }
 @Override
 protected void doPost(HttpServletRequest req, HttpServletResponse resp)
   throws ServletException, IOException {
  resp.setContentType("text/html; charset=utf-8");
  System.out.println("進入了Servlet");
  submit(req,resp);
 }
 
 public void submit(HttpServletRequest req, HttpServletResponse resp){
  System.out.println("進入了提交");
  List<NameValuePair> formparams = new ArrayList<NameValuePair>();
  //賣家支付寶帳戶
  formparams.add(new BasicNameValuePair("WIDseller_email", "×××"));
  
  //訂單編號
  formparams.add(new BasicNameValuePair("WIDout_trade_no", "20140527093355"));
  
  //訂單名稱
  formparams.add(new BasicNameValuePair("WIDsubject", "書"));
  
  //付款金額
  formparams.add(new BasicNameValuePair("WIDtotal_fee", "0.01"));
  
  //訂單描述
  formparams.add(new BasicNameValuePair("WIDbody", "miaoqing buy a book"));
  
  //默認網銀
  formparams.add(new BasicNameValuePair("WIDdefaultbank", "CCB-DEBIT"));
  //商品展現地址
  formparams.add(new BasicNameValuePair("WIDshow_url", "http://www.xxx.com/myorder.html"));
  
  CloseableHttpClient httpclient = HttpClients.createDefault();
  UrlEncodedFormEntity entity = new UrlEncodedFormEntity(formparams, Consts.UTF_8);
  
  HttpPost httppost = new HttpPost("http://localhost:8080/pay/alipayapi.jsp");
  httppost.setEntity(entity);
   try {
          PrintWriter out = resp.getWriter();
          HttpResponse httpResp = httpclient.execute(httppost);
          int statusCode = httpResp.getStatusLine().getStatusCode();
          if(statusCode == 200) {
              out.println(EntityUtils.toString(httpResp.getEntity()));
          }
      }catch(Exception e) {
          e.printStackTrace();
      }finally {
       httppost.releaseConnection();
      }
  System.out.println("提交完畢");
  
 }
}
相關文章
相關標籤/搜索