Java调用淘宝API demo源代码

    /**  
     *   
     */  
    package com.taobao.api.demo.onsale;   
      
    import java.io.IOException;   
    import java.net.URLEncoder;   
      
    import javax.servlet.ServletException;   
    import javax.servlet.http.HttpServlet;   
    import javax.servlet.http.HttpServletRequest;   
    import javax.servlet.http.HttpServletResponse;   
      
    import org.apache.commons.logging.Log;   
    import org.apache.commons.logging.LogFactory;   
      
    import com.taobao.api.TaobaoApiException;   
    import com.taobao.api.TaobaoJsonRestClient;   
    import com.taobao.api.TaobaoRestClient;   
    import com.taobao.api.model.ItemsGetResponse;   
    import com.taobao.api.model.ItemsOnSaleGetRequest;   
      
    /**  
     * @version 2008-10-29  
     * @author <a href="mailto:[email protected]">zixue</a>  
     *   
     */  
    public class MainServlet extends HttpServlet {   
        private static final transient Log log = LogFactory   
                .getLog(MainServlet.class);   
      
        /**  
         *   
         */  
        private static final long serialVersionUID = 8839099738909766274L;   
      
        @Override  
        protected void doPost(HttpServletRequest req, HttpServletResponse resp)   
                throws ServletException, IOException {   
            String appkey = req.getParameter("appkey");   
            String secret = req.getParameter("secret");   
            if (log.isDebugEnabled()) {   
                log.debug(appkey + ":" + secret);   
            }   
            if (appkey != null && secret != null) {   
                try {   
                //生成客户端实例   
                    TaobaoRestClient client = new TaobaoJsonRestClient(appkey,secret);   
                    //淘宝卖家的出售的商品列表   
                    ItemsOnSaleGetRequest tbReq = new ItemsOnSaleGetRequest()   
                            .withFields("iid,title,price,list_time,num")   
                            .withPageNo(1)   
                            .withPageSize(20);   
                    // use appkey as session_id   
                    ItemsGetResponse tbRsp = client.itemsOnSaleGet(tbReq, appkey);//搜索单个商品信息的Request请求   
                    if (log.isDebugEnabled()) {   
                        log.debug(tbRsp.getBody());   
                    }   
                    //如果接口调用成功   
                    if (!tbRsp.isSuccess()) {   
                        if (tbRsp.isRedirect()) {   
                            req.setAttribute("url",   
                                             tbRsp.getRedirectUrl(URLEncoder   
                                                                  .encode   
                                                                  (req.getRequestURL()   
                                                                      .append('?')   
                                                                      .append("appkey=")   
                                                                      .append(appkey)   
                                                                      .append("&secret=")   
                                                                      .append(secret)   
                                                                      .toString(),"utf-8")   
                                                                 )   
                                            );   
                        } else {   
                            req.setAttribute("msg", tbRsp.getMsg());   
                        }   
                    } else {   
                        req.setAttribute("items", tbRsp.getItems());   
                    }   
                } catch (TaobaoApiException e) {   
                    throw new ServletException(e);   
                }   
            }   
            req.getRequestDispatcher("main.jsp").forward(req, resp);   
        }   
      
        @Override  
        protected void doGet(HttpServletRequest req, HttpServletResponse resp)   
                throws ServletException, IOException {   
            doPost(req, resp);   
        }   
      
    }

猜你喜欢

转载自zzc1684.iteye.com/blog/2192747