API 接口的定义
API(Application Programming Interface),即应用程序编程接口,是一组用于构建软件应用程序的协议、例程和工具。它定义了不同软件组件之间如何进行交互,就像是软件世界中的 “语言翻译官” 或者 “沟通桥梁”。
简单来说,当你使用一个软件应用(比如手机上的天气应用)去获取天气数据时,这个应用就是通过 API 接口向提供天气数据的服务器发送请求,服务器收到请求后,通过 API 接口返回天气数据给应用,然后应用才能把天气信息展示给你。
item_get-获得淘宝商品详情
taobao.item_get
公共参数
名称 | 类型 | 必须 | 描述 |
| ----------- | ------ | -- | ---------------------------------------------------------------------- |
| 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版本
请求参数
请求参数:num_iid=652874751412&is_promotion=1
参数说明:num_iid:淘宝商品ID
is_promotion:是否获取取促销价
进入官网,获取key和密钥,免费测试api接口
响应参数
Version: Date:2022-04-04
名称 | 类型 | 必须 | 示例值 | 描述 |
---|---|---|---|---|
item | item[] | 1 | 宝贝详情数据 |
<?php
// 请求示例 url 默认请求参数已经URL编码处理
// 本示例代码未加密secret参数明文传输,若要加密请参考:
https://open.onebound.cn/help/demo/sdk/demo-sign.php
$method = "GET";
$url = "https://api-gw.onebound.cn/taobao/item_get/?key=
<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=652874751412&is_promotion=1";
$curl = curl_init();
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($curl, CURLOPT_FAILONERROR, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_ENCODING, "gzip");
var_dump(curl_exec($curl));
?>
异常示例
{
"error": "item-not-found",
"reason": "商品没找到",
"error_code": "2000",
"success": 0,
"cache": 0,
"api_info": "today:0 max:10000",
"execution_time": 0.081,
"server_time": "Beijing/2020-06-10 23:44:00",
"call_args": [],
"api_type": "taobao",
"request_id": "15ee0ffc041242"}
错误码解释
状态代码(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 | 未知错误 | 否 |
API 接口的作用
软件集成
- API 接口使得不同的软件系统能够相互集成。例如,一个企业可能使用了不同的软件来管理客户关系(CRM)、企业资源规划(ERP)和财务管理。通过 API 接口,这些软件可以相互通信和共享数据。比如,当销售部门在 CRM 系统中完成一笔订单时,CRM 系统可以通过 API 接口将订单信息发送到 ERP 系统,以便 ERP 系统更新库存和生产计划,同时也可以将财务信息发送到财务管理软件进行记账等操作。
平台扩展和生态建设
- 许多大型平台(如社交媒体平台、电商平台等)通过开放 API 接口来吸引第三方开发者。以社交媒体平台为例,平台提供 API 接口允许第三方开发者创建各种应用,如微博平台开放 API 后,第三方开发者可以开发微博数据分析工具、自动发布工具等。这些应用可以丰富平台的功能,吸引更多用户,形成一个繁荣的生态系统。
提高开发效率
- 对于开发者来说,使用 API 接口可以避免重复开发。比如,在开发一个旅游应用时,开发者不需要自己去收集和更新世界各地的酒店、景点等信息,而是可以使用旅游数据供应商提供的 API 接口来获取这些信息。这样可以节省大量的时间和精力,使开发者能够更专注于应用的核心功能开发,如用户界面设计、用户体验优化等。