电商后台管理系统关键的一环就是实现电商平台数据的抓取,以及上下架商品、订单修改等功能的调用。这里就需要调用电商API接口。接入电商API接口后再根据自我的需求进行功能再开发,实现业务上的数字化管理。
其中订单管理模板上需要用到如下API:
seller_order_list获取卖出的商品订单列表
seller_order_detail获取卖出的商品订单详情
seller_order_address获取卖出的商品订单地址
seller_order_close卖家关闭一笔交易
seller_order_message获取或修改卖出去的订单备注
seller_order_send订单发货
调用代码展示 进入测试
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; import java.net.URL; import java.nio.charset.Charset; import org.json.JSONException; import org.json.JSONObject; import java.io.PrintWriter; import java.net.URLConnection; public class Example { private static String readAll(Reader rd) throws IOException { StringBuilder sb = new StringBuilder(); int cp; while ((cp = rd.read()) != -1) { sb.append((char) cp); } return sb.toString(); } public static JSONObject postRequestFromUrl(String url, String body) throws IOException, JSONException { URL realUrl = new URL(url); URLConnection conn = realUrl.openConnection(); conn.setDoOutput(true); conn.setDoInput(true); PrintWriter out = new PrintWriter(conn.getOutputStream()); out.print(body); out.flush(); InputStream instream = conn.getInputStream(); try { BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8"))); String jsonText = readAll(rd); JSONObject json = new JSONObject(jsonText); return json; } finally { instream.close(); } } public static JSONObject getRequestFromUrl(String url) throws IOException, JSONException { URL realUrl = new URL(url); URLConnection conn = realUrl.openConnection(); InputStream instream = conn.getInputStream(); try { BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8"))); String jsonText = readAll(rd); JSONObject json = new JSONObject(jsonText); return json; } finally { instream.close(); } } public static void main(String[] args) throws IOException, JSONException { // 请求示例 url 默认请求参数已经URL编码处理 String url = "https://api-vx15870092527.cn/taobao/seller_order_list/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&page=&tabCode=&dateBegin=&dateEnd=&buyerNick=&itemTitle=&orderId=&lastStartRow=&detail=&page_size="; JSONObject json = getRequestFromUrl(url); System.out.println(json.toString()); } }
公共参数
名称 |
类型 |
必须 |
描述 |
key |
String |
是 |
调用key(必须以GET方式拼接在URL中) |
secret |
String |
是 |
调用密钥 |
api_name |
String |
是 |
API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等] |
cache |
String |
否 |
[yes,no]默认yes,将调用缓存的数据,速度比较快 |
result_type |
String |
否 |
[json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读 |
lang |
String |
否 |
[cn,en,ru]翻译语言,默认cn简体中文 |
version |
String |
否 |
API版本 |
错误码解释
状态代码(error_code) |
状态信息 |
详细描述 |
是否收费 |
0000 |
success |
接口调用成功并返回相关数据 |
是 |
2000 |
Search success but no result |
接口访问成功,但是搜索没有结果 |
是 |
4000 |
Server internal error |
服务器内部错误 |
否 |
4001 |
Network error |
网络错误 |
否 |
4002 |
Target server error |
目标服务器错误 |
否 |
4003 |
Param error |
用户输入参数错误 |
忽略 |
4004 |
Account not found |
用户帐号不存在 |
忽略 |
4005 |
Invalid authentication credentials |
授权失败 |
忽略 |
4006 |
API stopped |
您的当前API已停用 |
忽略 |
4007 |
Account stopped |
您的账户已停用 |
忽略 |
4008 |
API rate limit exceeded |
并发已达上限 |
忽略 |
4009 |
API maintenance |
API维护中 |
忽略 |
4010 |
API not found with these values |
API不存在 |
忽略 |
4012 |
Please add api first |
请先添加api |
忽略 |
4013 |
Number of calls exceeded |
调用次数超限 |
忽略 |
4014 |
Missing url param |
参数缺失 |
忽略 |
4015 |
Wrong pageToken |
参数pageToken有误 |
忽略 |
4016 |
Insufficient balance |
余额不足 |
忽略 |
4017 |
timeout error |
请求超时 |
否 |
5000 |
unknown error |
未知错误 |
否 |