校验方式

数据接口的请求校验采用JWT校验

  • 相关文档:https://jwt.io/
  • 相关实践:https://www.jianshu.com/p/576dbf44b2ae
  • PHP库:https://packagist.org/packages/firebase/php-jwt

  • 请求方按照JWT标准拼接 token。有以下注意事项:

    1. payload 中要有签发时间( iat )和过期时间(exp) 以及 APPID,格式如下:{'iat':1515654877,'exp':1515654977,'appid': '2rdtdsaq'}

    2. signature 中,用 appsecret 进行加盐处理;

    3. appid 和 appsecret 是24好玩为第三方平台分配,基于安全,请在对接前索要这两项;

    4. 请求头里加入Authorization,并加上Bearer标注:headers: {'Authorization': 'Bearer ' + token} // token 类型 Bearer 与 token 值之间以空格' '分割

    5. 如果是服务端请求,请在 headers 中加上以下参数:headers: {'X-Requested-With': 'XMLHttpRequest'}

请求示例

  1. 已知参数:

  2. appid: S6qHH9ZPR(示例 参数)

  3. appsecret:EZMqJOBKDttQXvoduhpxXGwccZ(示例 参数)

  4. JWT加密流程(详细流程请参见:https://packagist.org/packages/firebase/php-jwt):

$appsecret = "EZMqJOBKDttQXvoduhpxXGwccZ";
$payload = array(
    'iat' => 1356999524,
    'exp' => 1357000000,
    'appid' => 'S6qHH9ZPR',  // 第三方平台的 appid
    'appuid' => '123as'     // 第三方平台下的用户id
);
$jwt_token = JWT::encode($payload, $appsecret);

results matching ""

    No results matching ""