1. /**  
  2.  *   
  3.  */  
  4. package com.taobao.api.demo.onsale;   
  5.   
  6. import java.io.IOException;   
  7. import java.net.URLEncoder;   
  8.   
  9. import javax.servlet.ServletException;   
  10. import javax.servlet.http.HttpServlet;   
  11. import javax.servlet.http.HttpServletRequest;   
  12. import javax.servlet.http.HttpServletResponse;   
  13.   
  14. import org.apache.commons.logging.Log;   
  15. import org.apache.commons.logging.LogFactory;   
  16.   
  17. import com.taobao.api.TaobaoApiException;   
  18. import com.taobao.api.TaobaoJsonRestClient;   
  19. import com.taobao.api.TaobaoRestClient;   
  20. import com.taobao.api.model.ItemsGetResponse;   
  21. import com.taobao.api.model.ItemsOnSaleGetRequest;   
  22.   
  23. /**  
  24.  * @version 2008-10-29  
  25.  * @author <a href="mailto:zixue@taobao.com">zixue</a>  
  26.  *   
  27.  */  
  28. public class MainServlet extends HttpServlet {   
  29.     private static final transient Log log = LogFactory   
  30.             .getLog(MainServlet.class);   
  31.   
  32.     /**  
  33.      *   
  34.      */  
  35.     private static final long serialVersionUID = 8839099738909766274L;   
  36.   
  37.     @Override  
  38.     protected void doPost(HttpServletRequest req, HttpServletResponse resp)   
  39.             throws ServletException, IOException {   
  40.         String appkey = req.getParameter("appkey");   
  41.         String secret = req.getParameter("secret");   
  42.         if (log.isDebugEnabled()) {   
  43.             log.debug(appkey + ":" + secret);   
  44.         }   
  45.         if (appkey != null && secret != null) {   
  46.             try {   
  47.             //生成客户端实例   
  48.                 TaobaoRestClient client = new TaobaoJsonRestClient(appkey,secret);   
  49.                 //淘宝卖家的出售的商品列表   
  50.                 ItemsOnSaleGetRequest tbReq = new ItemsOnSaleGetRequest()   
  51.                         .withFields("iid,title,price,list_time,num")   
  52.                         .withPageNo(1)   
  53.                         .withPageSize(20);   
  54.                 // use appkey as session_id   
  55.                 ItemsGetResponse tbRsp = client.itemsOnSaleGet(tbReq, appkey);//搜索单个商品信息的Request请求   
  56.                 if (log.isDebugEnabled()) {   
  57.                     log.debug(tbRsp.getBody());   
  58.                 }   
  59.                 //如果接口调用成功   
  60.                 if (!tbRsp.isSuccess()) {   
  61.                     if (tbRsp.isRedirect()) {   
  62.                         req.setAttribute("url",   
  63.                                          tbRsp.getRedirectUrl(URLEncoder   
  64.                                                               .encode   
  65.                                                               (req.getRequestURL()   
  66.                                                                   .append('?')   
  67.                                                                   .append("appkey=")   
  68.                                                                   .append(appkey)   
  69.                                                                   .append("&secret=")   
  70.                                                                   .append(secret)   
  71.                                                                   .toString(),"utf-8")   
  72.                                                              )   
  73.                                         );   
  74.                     } else {   
  75.                         req.setAttribute("msg", tbRsp.getMsg());   
  76.                     }   
  77.                 } else {   
  78.                     req.setAttribute("items", tbRsp.getItems());   
  79.                 }   
  80.             } catch (TaobaoApiException e) {   
  81.                 throw new ServletException(e);   
  82.             }   
  83.         }   
  84.         req.getRequestDispatcher("main.jsp").forward(req, resp);   
  85.     }   
  86.   
  87.     @Override  
  88.     protected void doGet(HttpServletRequest req, HttpServletResponse resp)   
  89.             throws ServletException, IOException {   
  90.         doPost(req, resp);   
  91.     }   
  92.   
  93. }

 

视频课堂:https://edu.csdn.net/course/play/8222