API_SIGNATURE::api_verify PHP Method

api_verify() public method

api_verify function.
public api_verify ( ) : void
return void
    function api_verify()
    {
        $this->app_check("post");
        $_arr_params = fn_post("params");
        $_arr_signature = validateStr(fn_post("signature"), 1, 0);
        switch ($_arr_signature["status"]) {
            case "too_short":
                $_arr_return = array("alert" => "x050226");
                $this->obj_api->halt_re($_arr_return);
                break;
            case "ok":
                $_str_sign = $_arr_signature["str"];
                break;
        }
        if ($this->obj_sign->sign_check($_arr_params, $_str_sign)) {
            $_str_alert = "y050403";
        } else {
            $_str_alert = "x050403";
        }
        $_arr_return = array("alert" => $_str_alert);
        $this->obj_api->halt_re($_arr_return);
    }

Usage Example

Example #1
0
<?php

/*-----------------------------------------------------------------
!!!!警告!!!!
以下为系统文件,请勿修改
-----------------------------------------------------------------*/
//不能非法包含或直接执行
if (!defined("IN_BAIGO")) {
    exit("Access Denied");
}
include_once BG_PATH_FUNC . "init.func.php";
//初始化
$arr_set = array("base" => true, "header" => "Content-type: application/json; charset=utf-8", "db" => true, "type" => "ajax");
fn_init($arr_set);
include_once BG_PATH_CONTROL . "api/signature.class.php";
//载入签名控制器
$api_signature = new API_SIGNATURE();
//初始化签名
switch ($GLOBALS["act_post"]) {
    case "signature":
        $api_signature->api_signature();
        //生成签名
        break;
    case "verify":
        $api_signature->api_verify();
        //验证签名
        break;
}