Java调用淘宝API demo源代码

简介: 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:zixue@taobao.com">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);   
    }   
 
}
目录
相关文章
|
5月前
|
XML 存储 Java
|
9月前
|
前端开发 Java API
合约跟单系统开发demo方案详情|api对接|一键跟单平台开发模式定制流程
合约跟单系统开发demo方案详情|api对接|一键跟单平台开发模式定制流程
|
Java API Spring
Spring Data Solr的api demo测试操作
Spring Data Solr的api demo测试操作
137 0
Spring Data Solr的api demo测试操作
|
JavaScript 前端开发 定位技术
Vue 集成腾讯地图基础api Demo集合(基础地图引入与展示模块,地址逆解析,3D/2D切换 ,位置服务,mark标记)
Vue 集成腾讯地图基础api Demo集合(基础地图引入与展示模块,地址逆解析,3D/2D切换 ,位置服务,mark标记)
747 0
Vue 集成腾讯地图基础api  Demo集合(基础地图引入与展示模块,地址逆解析,3D/2D切换 ,位置服务,mark标记)
|
达摩院 Java API
阿里云智能视觉开放平台人脸人体API测试Demo
阿里云视觉智能开放平台基于达摩院自研的人脸人体分析技术,提供人脸检测与五官定位、人脸属性识别、人脸比对、人脸搜索、人体检测、人体属性、行为分析等多种功能,为开发者和企业用户提供高性能高可用的人脸人体识别服务。广泛应用于数字门店、楼宇门禁、身份识别、互动娱乐、IPC摄像头、内容广告等领域。本文以厨师帽检测为例,使用新版本Java SDK演示服务的快速调用。
563 0
阿里云智能视觉开放平台人脸人体API测试Demo
|
消息中间件 Go API
阿里云Rocket MQ 管理API Go SDK使用示例Demo
消息队列 RocketMQ 版产品接口支持 HTTP 调用、SDK 调用和 OpenAPI Explorer 调用,本文主要演示Go SDK的安装和使用。
926 0
|
消息中间件 Kafka API
Kafka原理解析-旧版本0.8高级Api的Demo和配置信息获取技巧
旧版本高级Api封装: package xxxxxx; import kafka.producer.KeyedMessage; import kafka.producer.ProducerConfig; import java.util.Properties; public class KafkaProducerTest implements Runnable {
514 0
|
存储 自然语言处理 API
Flink1.9 Sate Processor API 介绍和实例demo
功能介绍 Flink1.9 新添加的功能,其能够帮助用户直接访问Flink中存储的State,API能够帮助用户非常方便地读取、修改甚至重建整个State。这个功能的强大之处在于几个方面,第一个就是灵活地读取外部的数据,比如从一个数据库中读取自主地构建Savepoint,解决作业冷启动问题,这样就不用从N天前开始重跑整个数据 可以使用的场景 异步校验或者查看某个阶段的状态,一般而言,flink作业的最终结果都会持久化输出,但在面临问题的时候,如何确定哪一级出现问题,state processor api也提供了一种可能,去检验state中的数据是否与预期的一致。
|
JSON API 数据格式
电商企业在线预约快递取件接口API对接demo
(1)支持自定义预约时间,不遗漏订单(2)已支持三通一达(申通不支持)、顺丰、EMS、宅急送、德邦、优速等物流公司(3)快递公司会在两小时内联系发件人并上门揽件(4)接口支持的消息接收方式为HTTP POST,请求方法的编码格式(utf-8):“application/x-www-form-urlencoded;charset=utf-8”。
1308 0
|
API 数据格式
顺丰快递单号查询api接口免费对接参数以及demo
顺丰快递对物流信息的管控较为严格,官网上也加上了由XX云提供的滑动验证码进行保护,如果需要大批量查询顺丰的物流信息,必须要对接顺丰官方的路由查询接口。注意,对接接口必须要有顺丰月结账户,对接成功后只能查询自己发货的物流单号的路由信息。
相关产品
云迁移中心
推荐文章
更多