电商API接口-电商OMS不可或缺的一块 调用代码展示

news/2024/7/19 10:16:33 标签: 大数据, 数据挖掘, 人工智能, 爬虫, 数据仓库

电商后台管理系统关键的一环就是实现电商平台数据的抓取,以及上下架商品、订单修改等功能的调用。这里就需要调用电商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

未知错误


http://www.niftyadmin.cn/n/125639.html

相关文章

【Java学习笔记】8.Java 运算符

Java 运算符 计算机的最基本用途之一就是执行数学运算&#xff0c;作为一门计算机语言&#xff0c;Java也提供了一套丰富的运算符来操纵变量。我们可以把运算符分成以下几组&#xff1a; 算术运算符关系运算符位运算符逻辑运算符赋值运算符其他运算符 算术运算符 算术运算符…

Redis缓存击穿,缓存穿透,缓存雪崩,附解决方案

前言在日常的项目中&#xff0c;缓存的使用场景是比较多的。缓存是分布式系统中的重要组件&#xff0c;主要解决在高并发、大数据场景下&#xff0c;热点数据访问的性能问题&#xff0c;提高性能的数据快速访问。本文以Redis作为缓存时&#xff0c;针对常见的缓存击穿、缓存穿透…

【c++】STL常用算法2—常用查找算法

文章目录常用查找算法findfind_ifadjacent_findbinary_searchcountcount_if常用查找算法 算法简介&#xff1a; find//查找元素 find_if//按条件查找元素 adjacent_find//查找相邻重复元素 binary_search//二分查找法 count//统计元素个数 count_if//按条件统计元素个数find …

记录开发中遇到sonar以及相关思路解决

sonar问题汇总 1.布尔常量使用 【问题标题】&#xff1a;How to fix the major issue in SonarQube "needlessly boxes a boolean constant"如何解决 SonarQube 中的主要问题“不必要地装箱一个布尔常量” forexample private static boolean isNAND(boolean val…

帆船结构3D线上展示教学的亮点有哪些?

由广州华锐互动开发的帆船结构3D线上展示教学系统&#xff0c;是一种创新的教学方式&#xff0c;基于虚拟现实技术&#xff0c;通过3D模型、交互式模拟等技术手段&#xff0c;可以让学生在虚拟环境中进行帆船组装和调试训练&#xff0c;以达到实践教学的目的。不同于传统的实践…

JSONObject、fastJson(JsonObject)、Gson(JsonObject)区别

概述 Java中并没有内置的 JSON 解析&#xff0c;需要使用第三方类库 fastJson &#xff1a;阿里巴巴的JSON 库&#xff0c;优势在于解析速度快&#xff0c;解析效率高&#xff0c;可以轻松处理大量的 JSON 数据JackSon &#xff1a; 社区十分活跃&#xff0c;spring框架默认使…

我一个女孩子居然做了十年硬件……

2011年&#xff0c;一个三本大学的电子信息专业的大三女学生跟2个通信专业的大二男生组成了一组代表学校参加2011年“瑞萨杯”全国大学生电子设计大赛&#xff0c;很意外的获得了湖北赛区省三等奖&#xff0c;虽然很意外&#xff0c;但还是挺高兴的&#xff0c;毕竟第一次为喜欢…

粒子群算法

粒子群算法1 粒子群算法介绍2 基本思想3 算法流程4 代码实现1 粒子群算法介绍 粒子群优化算法(PSO&#xff1a;Particle swarm optimization) 是一种进化计算技术&#xff08;evolutionary computation&#xff09;。源于对鸟群捕食的行为研究。粒子群优化算法的基本思想是通过…