, Bilibili读取第三方用户登陆信息

分享于 

2分钟阅读

GitHub

  繁體
  • 源代码名称:
  • 源代码网址:
  • 源代码文档
  • 源代码下载
  • Git URL:
    .git
    Git Clone代码到本地:
    git clone 
    Subversion代码到本地:
    $ svn co --depth empty 
    Checked out revision 1.
    $ cd repo
    $ svn up trunk
    

    读取第三方用户登陆信息

    调用地址

    https://secure.bilibili.tv/login

    参数

    字段必选类型说明
    apitruestring申请时填入的API地址
    appkeytruestring申请时系统提供的Key
    signtruestring校验密钥 md5("api=<API_SECRET>")

    回调

    编码为UTF-8

    返回值字段字段类型字段说明
    midint会员编号
    unamestringUTF-8编码 用户暱称
    facestring用户头像
    rankint用户等级编码
    access_keystring用户访问授权密钥
    signstring校验码 计算方法 见API说明页
    示例

    PHP 版本:

    <?php
     /**
     * @param $params array 参数列表
     * @param $key 加密密钥
     * @return array sign:加密校验串,params:参数拼接串
     */
     function get_sign($params, $key) {
      $_data = array();
      ksort($params);
      reset($params);
      foreach ($params as $k => $v) {
      $_data[] = $k . '=' . rawurlencode($v);
      }
      $_sign = implode('&', $_data);
      return array(
        'sign' => strtolower(md5($_sign . $key)),
        'params' => $_sign,
      );
     }
     define("APP_SECRET","abcdef123456");
     $params = $_GET;
     unset($params['sign']);
     $sign = get_sign($params,APP_SECRET);
     if ($sign['sign'] != $_GET['sign']) exit("Access denied");
     session_start();
     $_SESSION["access_key"] = $_GET['access_key'];
     header("Location: /favourite.php");
     ?> 

    相关文章