为了账号安全,请及时绑定邮箱和手机立即绑定

我不知道为什么我在发送不和谐的 webhook 时收到 400 bad request 错误。

我不知道为什么我在发送不和谐的 webhook 时收到 400 bad request 错误。

牛魔王的故事 2022-04-27 16:20:37
我是新手,所以这可能是一个愚蠢的错误我试图制作一个程序,将股票报价的价格作为 webhook 发送到不和谐。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 Client Error: BAD REQUEST for url: https://discordapp.com/api/webhooks/609119785015312414/HOkHGPWqfPfLJHpSp15XZ9dUNhUDly_DKQ8OwLgk3Rw0-4G08gx0mOrKN3FKhompb5ig顺便说一句 - 我在发布之前删除了 webhook
查看完整描述

2 回答

?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

您的代码存在一个问题。Webhook 运行正常。

data["content"] = symbol.json()["Global Quote"]

在行中 data["content"] 是一个字典,而它需要是一个字符串

您必须将其转换为字符串

有两种方法可以解决此问题:-

使用 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"])


查看完整回答
反对 回复 2022-04-27
?
喵喔喔

TA贡献1735条经验 获得超5个赞

做就是了:


from dhooks import Webhook


hook = Webhook("your-webhook")


hook.send("message-here")


查看完整回答
反对 回复 2022-04-27
  • 2 回答
  • 0 关注
  • 263 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号