我不知道为什么我在发送 discord webhook 时收到 400 bad request 错误。一切似乎都很好,但我是新手
I dont know why I get a 400 bad request error for sending a discord webhook. Everything seems fine but I am new at this
我是新手所以这可能是一个愚蠢的错误
我正在尝试制作一个程序,将股票报价的价格作为 webhook 发送到 discord。
webhook 没有发送。但是,当我执行 print(symbol.json()["Global Quote"]) 时,我得到了所有信息。
我认为 "Content-Type" 有问题:"application/json" 但我不确定如何解决它。
这是一个片段:
webhook = 'https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig'
session = requests.session()
symbol = session.get("https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=AAPL&apikey=F4RV85MVA2M2YTIY")
data = {}
data["content"] = symbol.json()["Global Quote"]
data["username"] = "AAPL"
result = requests.post(webhook, data=json.dumps(data), headers={"Content-Type": "application/json"})
try:
result.raise_for_status()
except requests.exceptions.HTTPError as err:
print(err)
else:
print("Payload delivered successfully, code {}.".format(result.status_code))
此输出为:400 客户端错误:url 的错误请求:https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig
顺便说一句 - 我在发布之前删除了 webhook
您的代码有一个问题。 Webhook 正常运行。
data["content"] = symbol.json()["Global Quote"]
In the line data["content"] is a dict while it needs to be a string
You have to convert It to a String
有两种方法可以解决这个问题:-
第一种方法使用 json -
import json
然后将这一行data["content"] = symbol.json()["Global Quote"]
编辑为-
data["content"] = json.dumps(symbol.json()["Global Quote"])
第二种方式-
将此行 data["content"] = symbol.json()["Global Quote"]
编辑为 -
data["content"] = str(symbol.json()["Global Quote"])
就这样:
from dhooks import Webhook
hook = Webhook("your-webhook")
hook.send("message-here")
我是新手所以这可能是一个愚蠢的错误
我正在尝试制作一个程序,将股票报价的价格作为 webhook 发送到 discord。
webhook 没有发送。但是,当我执行 print(symbol.json()["Global Quote"]) 时,我得到了所有信息。
我认为 "Content-Type" 有问题:"application/json" 但我不确定如何解决它。
这是一个片段:
webhook = 'https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig'
session = requests.session()
symbol = session.get("https://www.alphavantage.co/query?function=GLOBAL_QUOTE&symbol=AAPL&apikey=F4RV85MVA2M2YTIY")
data = {}
data["content"] = symbol.json()["Global Quote"]
data["username"] = "AAPL"
result = requests.post(webhook, data=json.dumps(data), headers={"Content-Type": "application/json"})
try:
result.raise_for_status()
except requests.exceptions.HTTPError as err:
print(err)
else:
print("Payload delivered successfully, code {}.".format(result.status_code))
此输出为:400 客户端错误:url 的错误请求:https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig
顺便说一句 - 我在发布之前删除了 webhook
您的代码有一个问题。 Webhook 正常运行。
data["content"] = symbol.json()["Global Quote"]
In the line data["content"] is a dict while it needs to be a string
You have to convert It to a String
有两种方法可以解决这个问题:-
第一种方法使用 json -
import json
然后将这一行data["content"] = symbol.json()["Global Quote"]
编辑为-
data["content"] = json.dumps(symbol.json()["Global Quote"])
第二种方式-
将此行 data["content"] = symbol.json()["Global Quote"]
编辑为 -
data["content"] = str(symbol.json()["Global Quote"])
就这样:
from dhooks import Webhook
hook = Webhook("your-webhook")
hook.send("message-here")