Post 由于负载无效,对 Typeform 的请求失败
Post request to Typeform failing due to Invalid payload
我一直在尝试向 typeform 发送 POST 请求,但我一直收到以下输出:
{"code":"INVALID_PAYLOAD"}
我尝试了以下方法,但未能成功完成请求。使用 headers 没有不同的结果。
如何正确格式化我的负载?
import requests
import time
epochTime = int(time.time())
token = requests.get("https://typeformtutorial.typeform.com/app/form/result/token/aA7Vx9/default")
data = {
"signature": token,
"form_id": "aA7Vx9",
"landed_at": epochTime,
"answers": [
{
"field": {
"id": "42758279",
"type": "yes_no"
},
"type": "boolean",
"boolean": True
},
{
"field": {
"id": "42758410",
"type": "short_text"
},
"type": "text",
"text": "Hi"
}
]
}
r = requests.post("https://typeformtutorial.typeform.com/app/form/submit/aA7Vx9",
data=data)
print(r.text) #.... INVALID_PAYLOAD
您的代码似乎有两个问题:
首先,您在 data
字典中的 signature
键似乎没有正确的值,所以我建议更换:
"signature": token,
和
"signature": token.text,
其次,typeformtutorial 似乎希望收到一个 JSON 字符串,因此您应该替换:
requests.post("https://typeformtutorial.typeform.com/app/form/submit/aA7Vx9",data=data)
和
requests.post("https://typeformtutorial.typeform.com/app/form/submit/aA7Vx9",json=data)
希望对您有所帮助!
我一直在尝试向 typeform 发送 POST 请求,但我一直收到以下输出:
{"code":"INVALID_PAYLOAD"}
我尝试了以下方法,但未能成功完成请求。使用 headers 没有不同的结果。
如何正确格式化我的负载?
import requests
import time
epochTime = int(time.time())
token = requests.get("https://typeformtutorial.typeform.com/app/form/result/token/aA7Vx9/default")
data = {
"signature": token,
"form_id": "aA7Vx9",
"landed_at": epochTime,
"answers": [
{
"field": {
"id": "42758279",
"type": "yes_no"
},
"type": "boolean",
"boolean": True
},
{
"field": {
"id": "42758410",
"type": "short_text"
},
"type": "text",
"text": "Hi"
}
]
}
r = requests.post("https://typeformtutorial.typeform.com/app/form/submit/aA7Vx9",
data=data)
print(r.text) #.... INVALID_PAYLOAD
您的代码似乎有两个问题:
首先,您在 data
字典中的 signature
键似乎没有正确的值,所以我建议更换:
"signature": token,
和
"signature": token.text,
其次,typeformtutorial 似乎希望收到一个 JSON 字符串,因此您应该替换:
requests.post("https://typeformtutorial.typeform.com/app/form/submit/aA7Vx9",data=data)
和
requests.post("https://typeformtutorial.typeform.com/app/form/submit/aA7Vx9",json=data)
希望对您有所帮助!