@Viplayer

Почему Discord отдает «405: Method Not Allowed», когда отправляю CURLOPT_HTTPHEADER?

Хочу ботом изменить имя в гильдии методом Modify Guild Member, использую код

$url = "https://discord.com/api/guilds/{guild.id}/members/{user.id}";

$curl = curl_init($url);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_PATCH, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$headers = array(
    "Accept: application/json",
    "Authorization: Bot $token",
    "Content-Type: application/json",
);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);

$data = json_encode (['nick' => 'test'], JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE);
curl_setopt($curl, CURLOPT_POSTFIELDS,  $data);

$resp = curl_exec($curl);
curl_close($curl);

echo '<pre>';
print_r ($resp);


Получаю {"message": "405: Method Not Allowed", "code": 0}

Как изменить никнейм и почему выдаёт эту ошибку?

Доки - https://discord.com/developers/docs/resources/guil...
  • Вопрос задан
  • 248 просмотров
Решения вопроса 1
nokimaro
@nokimaro
Меня невозможно остановить, если я смогу начать.
Потому что запрос надо отправлять с методом PATCH об этом написано в документации по вашей ссылке
Modify Guild Member
PATCH /guilds/{guild.id}/members/{user.id}


curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PATCH');
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы