首页 > 解决方案 > 我对 Discord API 的 HTTP 请求仅返回 Forbidden (403)

问题描述

我尝试更改我的令牌,重新检查 url,重新检查我的用户代理,并重新格式化我的 HTTP。我不知道还能做什么。我在这里关注文档:https ://discord.com/developers/docs/reference 。我试图跟随它到一个发球台,但我仍然得到“禁止”。我使用了此处找到的用户代理:我的代码返回 HTTP 错误 403:禁止

import socket, ssl
token = 'NzMyMzQ1MTcwNjk1MTU5ODU3.XxG68A.RednSTamtbmFf7e4aXmtoZiwiQc'
HOST = "discord.com"
PORT = 443
t = f'''
GET /api/guilds/702627382091186318/channels HTTP/1.0\r\n
 Authentication: Bot {token}\r\n
 Host: discord.com\r\n
 User-Agent: User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36\r\n
 Content-length: 500
 \r\n
 '''
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s_sock = context.wrap_socket(s, server_hostname=HOST)
s_sock.connect((HOST, 443))
s_sock.sendall(t.encode())

f = s_sock.recv(7000).decode()
print(f)

s_sock.close()import socket, ssl
token = 'NzMyMzQ1MTcwNJk5mTU5ODu3.XAG32A.rADnSTamtbmFf7e4aXmtoZiwiQc'
HOST = "discord.com"
PORT = 443
t = f'''
GET /api/guilds/702627382091186318/channels HTTP/1.0\r\n
 Authentication: Bot {token}\r\n
 Host: discord.com\r\n
 User-Agent: User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36\r\n
 Content-length: 500
 \r\n
 '''
context = ssl.SSLContext(ssl.PROTOCOL_TLSv1)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s_sock = context.wrap_socket(s, server_hostname=HOST)
s_sock.connect((HOST, 443))
s_sock.sendall(t.encode())

f = s_sock.recv(7000).decode()
print(f)

s_sock.close()

输出

HTTP/1.1 403 Forbidden
Server: cloudflare
Date: Fri, 17 Jul 2020 19:22:04 GMT
Content-Type: text/html
Content-Length: 151
Connection: close
CF-RAY: 5b4654647edc0de2-IAD
cf-request-id: 03ffd312c700000de2ff233200000001

<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>cloudflare</center>
</body>
</html>

注意:使用的令牌无效

标签: pythonsocketswebhttpshttp-status-code-403

解决方案


推荐阅读