CakePHP关于Lib使用

2022-10-13  本文已影响0人  itBox

在 Controller 中调用Lib

App::import('Lib','MyPrivacy');
$appId = Configure::read('pro.weixinpay.appId');
MyPrivacy::cancelUserPrivacy($appId,$openId);

若Lib在子文件夹中:
App::import('Lib/sub','MyPrivacy');

App::uses('Http',   'Lib');

/**
 * 授权协议和隐私条款接口
 */
class MyPrivacy {

    const baseUrl = 'http://myapi.com';
    public static $queryData;
    // 签名规则:签名 = appid拼接time拼接openid 后对其 sha1加密
    protected static function _buildQueryData($appid,$openid){
        $timeNow = time();
        $Sign = '具体签名算法';
        self::$queryData = [
            "appid"=>$appid,   
            "openid"=>$openid,
            "time"=>$timeNow,//当前时间戳
            "sign"=>$Sign
        ];
    }
     
    //取消用户协议上报接口
    public static function cancelUserPrivacy($appid,$openid) {
        ULog::w(ULOG_INFO, __CLASS__.' ' . __FUNCTION__ . ' 0 params '.json_encode(func_get_args()));
        self::_buildQueryData($appid,$openid);
        return self::_makeQuery("/privacy/cancelUserPrivacy");
    }

    protected static function _makeQuery($apiName){
        $url_data = self::baseUrl.$apiName;
        $r = Http::postJson($url_data, self::$queryData);
        if(200==$r['code']) {
            return true;
        }
        return false;
    }
上一篇 下一篇

猜你喜欢

热点阅读