mirror of
https://gitee.com/ledc/IYUUAutoReseed
synced 2025-05-20 00:15:23 +00:00
增加Ourbits验证方法
This commit is contained in:
parent
63a6894d97
commit
9043bcfc8a
67
app/Class/Oauth.php
Normal file
67
app/Class/Oauth.php
Normal file
@ -0,0 +1,67 @@
|
||||
<?php
|
||||
/**
|
||||
* IYUU用户注册、认证
|
||||
*/
|
||||
use Curl\Curl;
|
||||
class Oauth{
|
||||
// 合作的站点
|
||||
public static $sites = ['ourbits'];
|
||||
// 爱语飞飞token
|
||||
public static $token = '';
|
||||
// 合作站点用户id
|
||||
public static $user_id = 0;
|
||||
// 合作站点密钥
|
||||
public static $passkey = '';
|
||||
// 合作站名字
|
||||
public static $site = '';
|
||||
|
||||
public static function init(){
|
||||
global $configALL;
|
||||
foreach (self::$sites as $name) {
|
||||
if (isset($configALL[$name]['passkey']) && $configALL[$name]['passkey'] && isset($configALL[$name]['id']) && $configALL[$name]['id'] ) {
|
||||
self::$token = self::getSign();
|
||||
self::$user_id = $configALL[$name]['id'];
|
||||
self::$passkey = sha1( $configALL[$name]['passkey'] ); // 避免泄露用户passkey秘钥
|
||||
self::$site = $name;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
echo "-----缺少用户登录参数:token, user_id, passkey, name \n";
|
||||
echo "-----当前正在使用测试接口,功能会受到限制! \n\n";
|
||||
return false;
|
||||
}
|
||||
/**
|
||||
* 从配置文件内读取爱语飞飞token作为鉴权参数
|
||||
*/
|
||||
public static function getSign(){
|
||||
global $configALL;
|
||||
// 爱语飞飞
|
||||
$token = isset($configALL['iyuu.cn']) && $configALL['iyuu.cn'] ? $configALL['iyuu.cn'] : '';
|
||||
// 鉴权
|
||||
#$token = isset($configALL['secret']) && $configALL['secret'] ? $configALL['secret'] : $token;
|
||||
return $token;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户注册与登录
|
||||
* 作用:在服务器端实现微信用户与合作站点用户id的关联
|
||||
* 参数:爱语飞飞token + 合作站点用户id + sha1(合作站点密钥passkey) + 合作站点标识
|
||||
*/
|
||||
public static function login($apiUrl = ''){
|
||||
$is_oauth = self::init();
|
||||
if ( $is_oauth ) {
|
||||
$curl = new Curl();
|
||||
$curl->setOpt(CURLOPT_SSL_VERIFYPEER, false);
|
||||
$data = [
|
||||
'token' => self::$token,
|
||||
'id' => self::$user_id,
|
||||
'passkey'=> self::$passkey,
|
||||
'site' => self::$site,
|
||||
];
|
||||
$res = $curl->get($apiUrl, $data);
|
||||
p($res->response);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
}
|
@ -136,6 +136,7 @@ return array(
|
||||
'cookie' => '',
|
||||
// 如果需要自动辅种,必须配置
|
||||
'passkey' => '',
|
||||
'id' => 0, // 用户ID
|
||||
'is_vip' => 0, // 是否具有VIP或特殊权限?0 普通,1 VIP
|
||||
),
|
||||
// HDSky 序号:4
|
||||
|
@ -42,6 +42,7 @@ if( file_exists( APP_PATH."/config/config.php" ) )
|
||||
require_once ROOT_PATH . '/vendor/autoload.php';
|
||||
require_once APP_PATH . '/Class/File.php'; // 文件操作类
|
||||
require_once APP_PATH . '/Class/Function.php'; // 函数
|
||||
require_once APP_PATH . '/Class/Oauth.php'; // 用户鉴权
|
||||
require_once APP_PATH . '/Class/Rpc.php'; // RPC操作类
|
||||
require_once APP_PATH . '/Class/TransmissionRPC.class.php'; // transmission
|
||||
require_once APP_PATH . '/Class/qBittorrent.php'; // qBittorrent
|
||||
|
Loading…
x
Reference in New Issue
Block a user