PHP implementa la interfaz de consulta instantánea express bird

Interfaz de consulta instantánea

1. Ver la documentación de la interfaz API de la interfaz de consulta instantánea.
Inserte la descripción de la imagen aquí

2. Consulte el documento PHP de demostración
http://www.kdniao.com/file/KdApiSearchDemo(PHP).rar
3. Registrar una cuenta, rellene la información básica de la empresa y cargar la información de licencia de negocio.
4. Preparar el código de la empresa de logística y el número de mensajería. Para obtener más información, consulte el código de la empresa de mensajería en el documento de interfaz

4. Método de implementación Thinkphp6
1) La definición constante define la ID de comercio electrónico y la clave privada de cifrado de comercio electrónico
2) Generación de firma de firma de comercio electrónico
3) Enviar solicitud de publicación

<?php
namespace app\index\controller;

use think\Controller;


class Test extends  Base
{
    public function index()
    {
        //电商ID
        defined('EBusinessID') or define('EBusinessID', 'xxxxxx');//请到快递鸟官网申请http://kdniao.com/reg
//电商加密私钥,快递鸟提供,注意保管,不要泄漏
        defined('AppKey') or define('AppKey', '8f30e2c3-b4c4-423a-sssssss');//请到快递鸟官网申请http://kdniao.com/reg
//请求url
        defined('ReqURL') or define('ReqURL', 'https://api.kdniao.com/Ebusiness/EbusinessOrderHandle.aspx');

        $requestData= "{'OrderCode':'','ShipperCode':'STO','LogisticCode':'773079102643511'}";

        $datas = array(
            'EBusinessID' => EBusinessID,
            'RequestType' => '1002',
            'RequestData' => urlencode($requestData) ,
            'DataType' => '2',
        );
        $datas['DataSign'] = $this->encrypt($requestData, AppKey);
        $result=$this->sendPost(ReqURL, $datas);

        //根据公司业务处理返回的信息......
        halt($result);
        //return $result;
    }

    /**
     *  post提交数据
     * @param  string $url 请求Url
     * @param  array $datas 提交的数据
     * @return url响应返回的html
     */
   public function sendPost($url, $datas) {
        $postdata = http_build_query($datas);
        $options = array(
            'http' => array(
                'method' => 'POST',
                'header' => 'Content-type:application/x-www-form-urlencoded',
                'content' => $postdata,
                'timeout' => 15 * 60 // 超时时间(单位:s)
            )
        );
        $context = stream_context_create($options);
        $result = file_get_contents($url, false, $context);
        return $result;
    }

    /**
     * 电商Sign签名生成
     * @param data 内容
     * @param appkey Appkey
     * @return DataSign签名
     */
    public function encrypt($data, $appkey) {
        return urlencode(base64_encode(md5($data.$appkey)));
    }

}

Supongo que te gusta

Origin blog.csdn.net/weixin_39218464/article/details/114268169
Recomendado
Clasificación