1688按关键字搜索工厂数据API 返回值说明

27 阅读3分钟

​         API其实就是应用程序接口(Application Programming Interface)的简称。API 是一些功能、定义或者协议的集合,提供应用程序或者程序开发人员基于软件访问一组例程的能力,对外封装完善,调用时无需学习 API内部源码,依据 API文档功能说明书来使用即可。

那么API到底是一种什么技术呢?

       如今具有开放式的业务体系结构将是下一代网络的重要特征之一。其中,关键的技术之一就是网络控制与应用层之间的应用程序接口(API)。通过应用程序接口,业务开发商 、独立软件提供商 (ISV)等第三方应用可以获得使用现有网络资源的能力 ,从而方便 、灵活地为客户提供所需的业务。API接口已经深入应用到各个网页与APP中。

公共参数

请求地址:api-gw.onebound.cn/1688/item_s…

名称类型必须描述
keyString调用key(必须以GET方式拼接在URL中)
secretString调用密钥
api_nameStringAPI接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]
cacheString[yes,no]默认yes,将调用缓存的数据,速度比较快
result_typeString[json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读
langString[cn,en,ru]翻译语言,默认cn简体中文
versionStringAPI版本

请求参数

请求参数:q=衣服&page=1&sort=

参数说明:q:搜索关键字
page:翻页
sort:排序(lookback回头率,normal综合)

响应参数

Version: Date:

名称类型必须示例值描述
itemsitem[]0关键字搜索工厂数据
pageInt01页码
real_total_resultsInt01373474工厂数量
total_resultsInt01900工厂数量
page_sizeInt020接口返回数量
pagecountInt0100总页数
itemitem[]0宝贝详情数据
titleString0厦门高定供应链管理有限公司工厂名称
pic_urlString0air.1688.com/pages/vr_vi…VR视角
num_iidMix0商品ID
seller_nickString0厦门高定工厂昵称
shop_nameString0厦门高定供应链管理有限公司工厂名称
tpservice_yearString07诚信通年限
wwresponse_scoreString00.86服务响应率
ht_scoreString00.26回头率
compliance_scoreString01准时履约率
buyer_willString0777意向客户数
levelString0金牌制造工厂水平
level_scoreString02星工厂水平星级
areaString0厦门工厂地址
seller_idString0b2b-2200658542804b59e0工厂ID
cat_nameString0广告衫T恤;男式T恤;男式卫衣工厂服务类目名称
zhuyString0sale.1688.com/sale/zgc/sc…工厂主页地址

请求示例

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-gw.onebound.cn/1688/item_search_factory/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&q=衣服&page=1&sort=";
		JSONObject json = getRequestFromUrl(url);
		System.out.println(json.toString());
	}

}