Heim >Backend-Entwicklung >PHP-Tutorial >Verwendung der Express Bird-Abfrage-API-Schnittstelle (PHP-Version)
In diesem Artikel wird hauptsächlich die Verwendung der Express Bird-Abfrage-API-Schnittstelle (PHP-Version) vorgestellt, die jetzt mit allen Freunden in Not geteilt werden kann
Während der Projektentwicklung werden einige Anforderungen zwangsläufig einige API-Schnittstellen zum Expressversand verwenden. In diesem Artikel werden hauptsächlich die Abfrage-API des Expressversands und ihre Unterschiede zu anderen Unternehmen vorgestellt ;
Häufig verwendete Express-API-Schnittstellen sind:
Express Bird
Express 100
Aicha Express
Warten
AnwendungsszenarienWenn Sie es verwendet haben, bieten Express 100 und Aicha Express sowie andere Websites eine Express-Abfrage. Wenn Sie auf die Schnittstelle warten, werden Sie dies tun Stellen Sie fest, dass die Häufigkeit, mit der das von Ihnen beantragte Konto oder der Schlüssel die API-Schnittstelle aufrufen kann, begrenzt ist. Bei einigen beträgt sie 2000 Mal pro Tag, bei anderen 5000 Mal pro Tag. Das einzige, was Sie stört, ist, dass der Benutzer etwas hinzufügen muss Externe Links, während Express Bird von Benutzern nicht verlangt, externe Links hinzuzufügen. Für Nutzer ohne Portal gelten lediglich sehr strenge Anforderungen; außerdem muss für die Nutzung der Selbstbehalt bezahlt werden.
Express Bird, die Anforderungs-API-Schnittstelle ist unbegrenzte Zeit und dauerhaft kostenlos
Natürlich für Sie Bei kleinen Anforderungen können Express 100 und Aicha Express Ihre Anforderungen erfüllen. Wenn jedoch an einem bestimmten Tag zu viele Anfragen eingehen, muss Ihr Abfragedienst eingestellt werden, was sich auf Ihr Produkterlebnis auswirkt. Daher wird empfohlen, dass Sie Express Bird, um alles in einem Schritt zu erledigen.
Fragen Sie die Logistikinformationen der Bestellung abErreichbare Anforderungen
http://www.kdniao.com/ServiceApply.aspxGeben Sie die Informationen entsprechend Ihren Angaben vollständig ein und klicken Sie, um den Antrag einzureichen. Nach erfolgreicher Anmeldung können Sie Informationen wie ID und Schlüssel sehen. Mit diesen Informationen können Sie Abfragen und andere Schnittstellen-APIs anfordern
参数名称 | 类型 | 必须要求 | 说明 |
---|---|---|---|
RequestData | String | R | 请求内容,JSON或XML格式,须和DataType一致 |
EBusinessID | String | R | 用户ID |
RequestType | String | R | 请求指令类型:1002 |
DataSign | String | R | 数据内容签名 |
DataType | String | O | 请求、返回数据类型:1-xml,2-json;默认为xml格式 |
参数名称 | 类型 | 必须要求 | 说明 |
---|---|---|---|
OrderCode | varchar(50) | O | 订单编号 |
ShipperCode | varchar(10) | R | 快递公司编码 |
LogisticCode | varchar(50) | R | 物流单号 |
参数名称 | 类型 | 必须要求 | 说明 |
---|---|---|---|
EBusinessID | Int | R | 电商用户ID |
OrderCode | Varchar(50) | O | 订单编号 |
ShipperCode | varchar(10) | R | 快递公司编码 |
LogisticCode | Varchar(50) | R | 物流运单号 |
Success | Bool | R | 成功与否 |
Reason | Varchar(50) | O | 失败原因 |
State | Int | R | 物流状态1:已取件2:在途中3:签收 |
Traces | Varchar(Max) | R | 物流轨迹详情 |
Logistik-Track-Details
参数名称 | 类型 | 必须要求 | 说明 |
---|---|---|---|
AcceptTime | DateTime | R | 时间 |
AcceptStation | Varchar(50) | R | 描述 |
Remark | Varchar(150) | O | 备注 |
{ "OrderCode" : "", "ShipperCode" : "SF", "LogisticCode" : "118650888018"}
{ "EBusinessID" : "1109259", "OrderCode" : "", "ShipperCode" : "SF", "LogisticCode" : "118461988807", "Success" : true, "State" : 3, "Reason" : null, "traces" : [{ "AcceptTime" : "2014/06/25 08:05:37", "AcceptStation" : "正在派件..(派件人:邓裕富,电话:18718866310)[深圳 市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 04:01:28", "AcceptStation" : "快件在 深圳集散中心 ,准备送往下一站 深圳 [深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 01:41:06", "AcceptStation" : "快件在 深圳集散中心 [深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/24 20:18:58", "AcceptStation" : "已收件[深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/24 20:55:28", "AcceptStation" : "快件在 深圳 ,准备送往下一站 深圳集散中心 [深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 10:23:03", "AcceptStation" : "派件已签收[深圳市]", "Remark" : null }, { "AcceptTime" : "2014/06/25 10:23:03", "AcceptStation" : "签收人是:已签收[深圳市]", "Remark" : null } ]}
Nehmen Sie die PHP-Entwicklungssprache als Beispiel zum Erweitern
<?php //电商ID defined('EBusinessID') or define('EBusinessID', '请到快递鸟官网申请http://kdniao.com/reg'); //电商加密私钥,快递鸟提供,注意保管,不要泄漏 defined('AppKey') or define('AppKey', '请到快递鸟官网申请http://kdniao.com/reg'); //请求url defined('ReqURL') or define('ReqURL', 'http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx'); //调用查询物流轨迹 //--------------------------------------------- $logisticResult=getOrderTracesByJson(); echo logisticResult; //--------------------------------------------- /** * Json方式 查询订单物流轨迹 */ function getOrderTracesByJson(){ $requestData= "{'OrderCode':'','ShipperCode':'YTO','LogisticCode':'12345678'}"; $datas = array( 'EBusinessID' => EBusinessID, 'RequestType' => '1002', 'RequestData' => urlencode($requestData) , 'DataType' => '2', ); $datas['DataSign'] = encrypt($requestData, AppKey); $result=sendPost(ReqURL, $datas); //根据公司业务处理返回的信息...... return $result; } /** * post提交数据 * @param string $url 请求Url * @param array $datas 提交的数据 * @return url响应返回的html */ function sendPost($url, $datas) { $temps = array(); foreach ($datas as $key => $value) { $temps[] = sprintf('%s=%s', $key, $value); } $post_data = implode('&', $temps); $url_info = parse_url($url); if(empty($url_info['port'])) { $url_info['port']=80; } $httpheader = "POST " . $url_info['path'] . " HTTP/1.0\r\n"; $httpheader.= "Host:" . $url_info['host'] . "\r\n"; $httpheader.= "Content-Type:application/x-www-form-urlencoded\r\n"; $httpheader.= "Content-Length:" . strlen($post_data) . "\r\n"; $httpheader.= "Connection:close\r\n\r\n"; $httpheader.= $post_data; $fd = fsockopen($url_info['host'], $url_info['port']); fwrite($fd, $httpheader); $gets = ""; $headerFlag = true; while (!feof($fd)) { if (($header = @fgets($fd)) && ($header == "\r\n" || $header == "\n")) { break; } } while (!feof($fd)) { $gets.= fread($fd, 128); } fclose($fd); return $gets; } /** * 电商Sign签名生成 * @param data 内容 * @param appkey Appkey * @return DataSign签名 */ function encrypt($data, $appkey) { return urlencode(base64_encode(md5($data.$appkey))); } ?>
Für andere API-Schnittstellen gehen Sie bitte zu Express Bird, um die relevanten Dokumente im Detail anzuzeigen.
Wenn Ihr Produkt angedockt oder in die Express-Schnittstelle integriert werden muss, ist Express Bird eine gute Wahl Technisches Support-Personal. Die Anzahl der Anfragen ist unbegrenzt und die Nutzung ist für immer kostenlos.
Das obige ist der detaillierte Inhalt vonVerwendung der Express Bird-Abfrage-API-Schnittstelle (PHP-Version). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!