为了方便网站快速接入,物流巴巴电商团队已将HTTP通讯请求(基于 Request Payload )封装成独立的SDK文件,您仅需引入SDK文件,并构造简单的请求参数,即可得到服务器返回的标准 JavaScript 对象标记 (JSON) 数据,而无需具备基本的HTTP协议知识背景,方便、简单。
用户通过指定API参数来获取对应的结果,物流巴巴海运费查询的API参数集如下表所示:
属性 | 类型 | 约束 | 说明 |
---|---|---|---|
key | string | 必填 | 用户统一授权KEY,需在实例化sdk后,为对象指定key属性 |
type | string | 必填 | 请求海运数据的类型:fcl整箱,lcl拼箱 |
pol | string | 必填 | 起运港口简码 |
pod | string | 必填 | 目的港口简码 |
per_page | int | 必填 | 每个页面中希望展示的数量 |
current_page | int | 必填 | 当前数据分页 |
下载SDK,并引入到您的项目文件中,示例代码:
<?php
/**
* API接口演示程序
* Auth: 物流巴巴
* Date: 2016/5/20
* Copyright 5688.com.cn
* Link:http://www.5688.com.cn/ports 港口简码查询
*/
require_once "class.awice.php";
$_api_key='你的KEY';
$api = new Awice();
$api->key = $_api_key;
$_result = $api->payLoad(
array(
'type' => 'fcl',
'pol' => 'CNSZN',
'pod' => 'AUSYD',
'per_page' => 10,
'current_page' => 1
)
);
//显示结果
header('Content-type: application/json');
echo $_result;
请求发送后,服务器将返回标准JSON字符串:
请注意,所有的响应都包含在JSON对象result根元素中,响应对象中的 "status" 字段包含了请求的状态,未出现 任何错误时status的值为1,当status值为1之外的值时,响应对象中可能会包含一个附加的 err_msg 字段,此字段详细地说明了给定状态代码背后的原因。
响应字段说明,列表如下:
节点 | 字段(属性) | 说明 |
---|---|---|
/ | status | 请求状态 1:成功 0:失败 |
/ | err_msg | status字段为1以外的值时,返回包含的错误信息。 |
/metaData | polCode、podCode、perPage、pageNow、pageCount、link | 起运港简码、目的港简码、每页显示的数据数量、当前第几页、总页数、数据来源 |
/recordSet | cls、etd、tt、stdate、enddate、oceanFreight[]、localCharges[] | 截关日,开船日,有效期(始),有效期(止),海运费(数组),附加费(数组) |
为保障系统稳定,服务器原子性(atomicity)数据统计机制会精确统计用户每一次请求行为,超出请求频率后系统会自动锁定用户请求60(S),超出请求上限后,系统将返回错误信息。
单位时间(天)内,用户请求上限:1000次;
单位时间(分)内,最大用户并发请求30次;
*此值可能会随着用户的实际需求适时做出相应调整,以保障用户的最大需求。
用户使用此接口时,应在醒目位置显示JSON对象中link字段所包含的数据来源信息。