python - 通过 POST 在正文中发送数据 - Flask
问题描述
我需要使用 Flask 向 Instagram Basic API 发送 POST 请求。
这是我的代码:
def get_token_insta(code):
dict_to_send = {"client_id": "XXX",
"client_secret": "XXX",
"grant_type": "authorization_code",
"redirect_uri": "XXX",
"code": "XXX"}
json_string = json.dumps(dict_to_send)
res = requests.post('https://api.instagram.com/oauth/access_token', data=json_string)
data = res.json()
print(data)
# More code...
代码运行良好,但 Instagram 的响应是
{“error_type”:“OAuthException”,“code”:400,“error_message”:“缺少必填字段client_id”}
阅读官方文档和这个@murp答案,我需要将数据放入 POST 请求的正文中。
我错了吗?我怎样才能使它工作?
解决方案
您在哪里发现需要将 POST请求参数序列化到json
?当然,您会得到 JSON 响应,但您不需要序列化请求参数。尝试将dict_to_send
自身作为data
参数传递:
requests.post(url, ..., data=dict_to_send)
请求文档中的更多信息
推荐阅读
- html - 我想在类选择器中添加数组元素
- amazon-web-services - CloudSearch 分页超过 10000 条记录
- reactjs - React url-loader 扩展问题(加载文件未设置类型)
- android - Android Studio Firebase MPChart
- reactjs - reactjs:如何在单击重置按钮时触发文件输入的onChange
- sql - Microsoft SQL Server - 在数据库中按员工提取考勤卡数据
- c# - c# nosuchelementexception 和 chromedriver 缺少元素
- java - 兼容 java-11 的 Jconnect 版本是什么
- python - 在for循环python中的每个输入后打印输出
- android - java.lang.RuntimeException:android.database.sqlite.SQLiteException:没有这样的表:media_store_extension(代码1):,