<5>简介<6> <7>本文介绍如何使用 PHP 实现 Discord 账户与网站或应用程序的绑定功能。通过 Discord OAuth2,用户可以方便地使用 Discord 账号登录您的应用。<8> <9>准备工作<10> <11> <12>在 Discord Developer Portal 创建应用程序<13> <14>获取 Client ID 和 Client Secret<15> <16>设置回调 URL<17> <18> <19>安装 Discord OAuth2 库<20> <21>使用 Composer 安装 Discord PHP 库:<22> <23><24>composer require teamreflex/discord-php<25><26> <27>或者直接从 GitHub 下载:DiscordPHP GitHub<28> <29>代码实现<30> <31><32><?php // 引入 Discord OAuth2 库 require_once 'discord-php/vendor/autoload.php'; use Discord\OAuth\DiscordProvider; // 定义 Discord 应用程序的客户端 ID 和密钥 $client_id = 'YOUR_CLIENT_ID'; $client_secret = 'YOUR_CLIENT_SECRET'; // 创建 DiscordProvider 实例 $provider = new DiscordProvider([ 'clientId' => $client_id, 'clientSecret' => $client_secret, 'redirectUri' => 'https://example.com/callback', // 回调 URL ]); // 如果用户尚未授权,则重定向到 Discord 授权页面 if (!isset($_GET['code'])) { $authUrl = $provider->getAuthorizationUrl(); header('Location: ' . $authUrl); exit; } // 从 Discord 获取访问令牌 $token = $provider->getAccessToken('authorization_code', [ 'code' => $_GET['code'], ]); // 使用访问令牌获取用户信息 $user = $provider->getResourceOwner($token); // 将用户信息与系统中的帐户相关联 // 例如,将用户 ID 数据库中,以便以后进行身份验证 // 打印用户信息以进行测试 echo 'Hello, ' . $user->getUsername() . '!'; ?><33><34> <35>关键步骤说明<36> <37> <38><39>创建 DiscordProvider<40>:配置客户端 ID、密钥和回调 URL<41> <42><43>获取授权 URL<44>:将用户重定向到 Discord 授权页面<45> <46><47>获取访问令牌<48>:使用授权码换取访问令牌<49> <50><51>获取用户信息<52>:使用访问令牌获取 Discord 用户信息<53> <54> <55>相关文档<56> <57> <58>Discord API 文档:https://discord.com/developers/docs/intro<59> <60>DiscordPHP GitHub:https://github.com/teamreflex/DiscordPHP<61> <62>

发表评论 取消回复