>  기사  >  백엔드 개발  >  Express Bird 쿼리 API 인터페이스 사용법(PHP 버전)

Express Bird 쿼리 API 인터페이스 사용법(PHP 버전)

不言
不言원래의
2018-05-02 15:03:403595검색

이 글은 주로 참고할 만한 가치가 있는 Express Bird 쿼리 API 인터페이스(PHP 버전)를 소개합니다. 이제 필요한 친구들이 참고할 수 있습니다.


Premise

프로젝트는 개발 중입니다. 일부 요구사항에서는 특급 배송에 대한 일부 API 인터페이스를 사용할 수 있습니다. 이 기사에서는 주로 특급 배송의 쿼리 API와 다른 회사와의 차이점을 소개합니다.

일반적으로 사용되는 특급 배송 API 인터페이스는 다음과 같습니다.

  1. Express 100

  2. Aicha Express

    Wait


  3. Express 100, Aicha Express 등 웹사이트에서 제공하는 빠른 쿼리 및 기타 인터페이스를 사용해 본 적이 있다면 원하는 것을 찾을 수 있을 것입니다. 적용된 계정이나 키가 매일 API 인터페이스를 호출할 수 있는 횟수는 제한되어 있으며 일부는 하루에 2,000회, 일부는 5,000회/회입니다. 유일한 문제는 사용자가 외부 링크를 추가해야 한다는 것입니다. Express Bird는 사용자에게 외부 링크를 추가할 것을 요구하지 않습니다. 포털이 없는 사용자의 경우 매우 엄격한 요구 사항 외에는 사용하기 위해 초과 비용을 지불해야 합니다.

Express Bird
, API 인터페이스 요청은

무제한

이며

영구 무료물론 작은 요구 사항에는 Express 100과 Aicha Express가 요구 사항을 충족할 수 있지만 요청이 너무 많으면; 어떤 날에는 쿼리 서비스가 중단되어 제품 경험에 영향을 미칠 수 있으므로 Express Bird를 직접 사용하여 한 번에 바로 처리하는 것이 좋습니다.

적용 시나리오

주문의 물류 정보 쿼리


달성 가능한 요구

Express Bird 쿼리 API 인터페이스 사용법(PHP 버전)

앱이 직접 통합되어 특급 물류 정보 쿼리 API 인터페이스를 구현합니다

  1. WeChat 공개 계정에서, 사용자가 주문 번호를 입력하면 백엔드에서 주문 번호를 식별하고 Express Bird에 따라 Express API 인터페이스를 쿼리하여 자동 쿼리 기능을 구현합니다

  2. 등등

  3. Key 신청

http://www.kdniao.com /ServiceApply.aspx


귀하의 정보에 맞게 정보를 입력한 후 신청서 제출을 클릭하세요.

로그인에 성공하면 ID, 키 등의 정보를 확인할 수 있으며, 이 정보로 쿼리 및 기타 인터페이스 API를 요청할 수 있습니다.

Express query Api 인터페이스


인터페이스 문서 및 각 개발 언어 Demo

Query Api 인터페이스 정의

시스템 수준 입력 매개변수

과 일치해야 합니다.
매개변수 이름 Type 필수 요구 설명
RequestData String R 요청 콘텐츠(JSON 또는 XML 형식)는 DataType
EBusinessID String R User ID
RequestType String R 요청 명령 유형: 1002
DataSign String R 데이터 콘텐츠 서명
DataType String O 요청 및 반환 데이터 유형: 1-xml, 2-json; 형식

애플리케이션 수준 입력 매개변수

매개변수 이름 Type Required Description
OrderCode varchar(50) O 주문번호
ShipperCode varchar(10) R Express 회사 코드
LogisticCode varchar(50) R 물류 주문 번호

반환 결과 매개변수

매개변수 이름 Type 필수 Description
EBusinessID Int R 전자상거래 사용자 ID
OrderCode Varchar( 50 ) O 주문 번호
ShipperCode varchar(10) R Express 회사 코드
LogisticCode Varchar(50) R 물류 운송장 번호
성공 Bool R 성공 여부
Reason Varchar(50) O 실패 이유
State Int R 물류상태 1: 선택됨 up 항목 2: 이동 중 3: 영수증 서명
Traces Varchar(Max) R 물류 추적 세부 정보

물류 추적 세부 정보

Remark Varchar(150) JSON 매개변수 요청
{
    "OrderCode" : "",
    "ShipperCode" : "SF",
    "LogisticCode" : "118650888018"}
응답 JSON 매개변수Query API 인터페이스 사용PHP 개발 언어를 예로 들어 확장다른 API 인터페이스의 경우, Express Bird를 방문하세요. 자세한 내용은 관련 문서를 참조하세요. 따뜻한 알림Express Bird
매개변수 이름 ㅋㅋㅋ 0) R Description
O Remarks
{
    "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
        }
    ]}
<?php
//电商ID
defined(&#39;EBusinessID&#39;) or define(&#39;EBusinessID&#39;, &#39;请到快递鸟官网申请http://kdniao.com/reg&#39;);
//电商加密私钥,快递鸟提供,注意保管,不要泄漏
defined(&#39;AppKey&#39;) or define(&#39;AppKey&#39;, &#39;请到快递鸟官网申请http://kdniao.com/reg&#39;);
//请求url
defined(&#39;ReqURL&#39;) or define(&#39;ReqURL&#39;, &#39;http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx&#39;);


//调用查询物流轨迹
//---------------------------------------------


$logisticResult=getOrderTracesByJson();
echo logisticResult;


//---------------------------------------------
 
/**
 * Json方式 查询订单物流轨迹
 */
function getOrderTracesByJson(){	$requestData= "{&#39;OrderCode&#39;:&#39;&#39;,&#39;ShipperCode&#39;:&#39;YTO&#39;,&#39;LogisticCode&#39;:&#39;12345678&#39;}";		$datas = array(
        &#39;EBusinessID&#39; => EBusinessID,
        &#39;RequestType&#39; => &#39;1002&#39;,
        &#39;RequestData&#39; => urlencode($requestData) ,
        &#39;DataType&#39; => &#39;2&#39;,
    );
    $datas[&#39;DataSign&#39;] = 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(&#39;%s=%s&#39;, $key, $value);		    }	    $post_data = implode(&#39;&&#39;, $temps);
    $url_info = parse_url($url);	if(empty($url_info[&#39;port&#39;]))	{		$url_info[&#39;port&#39;]=80;		}
    $httpheader = "POST " . $url_info[&#39;path&#39;] . " HTTP/1.0\r\n";
    $httpheader.= "Host:" . $url_info[&#39;host&#39;] . "\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[&#39;host&#39;], $url_info[&#39;port&#39;]);
    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)));
}


?>
귀하의 제품을 고속 인터페이스에 도킹하거나 통합해야 하는 경우 가 좋은 선택입니다. 문의 횟수에는 제한이 없습니다. 그리고 그것은 항상 무료입니다.

위 내용은 Express Bird 쿼리 API 인터페이스 사용법(PHP 버전)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:PHP 미들웨어 ICE다음 기사:PHP 미들웨어 ICE