Discord使用php curl获取公会会员列表

时间:2018-04-06 12:39:35

标签: php laravel curl discord

我正在使用socialite来获取访问令牌:

return Socialite::driver('discord')
->scopes(['email', 'identify', 'connections', 'guilds', 'rpc.api', 
'guilds.join'])
->redirect();

回调网址正在向我提供详细信息,因为没有朋友列表API调用我正在尝试获取包含成员详细信息的公会的用户列表,为此我使用curl:

$authToken ="MYTOKEN";
$url="https://discordapp.com/api/v6/users/@me/guilds";

$ch = curl_init();
curl_setopt_array($ch, array(
    CURLOPT_URL            => $url,
    CURLOPT_HTTPHEADER     => array('Authorization: Bearer '.$authToken),
    CURLOPT_RETURNTRANSFER => 1,
    CURLOPT_FOLLOWLOCATION => 1,
    CURLOPT_VERBOSE        => 1,
    CURLOPT_SSL_VERIFYPEER => 0,
));
$response = curl_exec($ch);
curl_close($ch); 

API调用工作正常,并为我提供了一个包含其ID的公会列表。例如,其中一个ID是431731422857003020,但当我尝试使用curl进行另一个API调用get list of members

$url="https://discordapp.com/api/v6/guilds/431731422857003020/members";

它给了我这个错误: {"code": 0, "message": "401: Unauthorized"}

我不确定是不是因为我应该使用不同的方法来获取成员列表,或者我应该添加不同的范围,我到处搜索,但没有看到任何关于discord scopes的正确文档

1 个答案:

答案 0 :(得分:0)

您应该这样设置标题:Authorization: Bot {BOT_TOKEN}