使用 python 创建字段时无法验证 Airtable API
Trouble authenticating Airtable API while creating a field with python
[新手问题]
我正在尝试使用 python 3 在我的 Airtable 基地创建新记录。
文档中的curl命令如下:
$ curl -v -XPOST https://api.airtable.com/v0/restoftheurl \
-H "Authorization: Bearer My_API_Key" \
-H "Content-type: application/json" \
-d '{
"fields": {
"Item": "Headphone",
"Quantity": "1",
"Customer_ID": [
"My_API_Key"
]
}
}'
我尝试使用的 python 代码是:
import requests
API_URL = "https://api.airtable.com/v0/restoftheurl"
data = {"Authorization": "Bearer My_API_Key","Content-type":
"application/json","fields": {"Item": "randomitem","Quantity":
"5","Customer_ID": ["randomrecord"]}}
r = requests.post(API_URL, data)
print(r.json())
响应是错误的地方:
{'error': {'type': 'AUTHENTICATION_REQUIRED', 'message': 'Authentication required'}}
我应该如何正确验证这个,或者我是这样的?
您需要区分 body(数据)和 headers。使用 json
命名参数自动将内容类型设置为 application/json
:
import requests
API_URL = "https://api.airtable.com/v0/restoftheurl"
headers = {
"Authorization": "Bearer My_API_Key"
}
data = {
"fields": {
"Item": "randomitem",
"Quantity": "5",
"Customer_ID": ["randomrecord"]
}
}
r = requests.post(API_URL, headers=headers, json=data)
print(r.json())
[新手问题]
我正在尝试使用 python 3 在我的 Airtable 基地创建新记录。 文档中的curl命令如下:
$ curl -v -XPOST https://api.airtable.com/v0/restoftheurl \
-H "Authorization: Bearer My_API_Key" \
-H "Content-type: application/json" \
-d '{
"fields": {
"Item": "Headphone",
"Quantity": "1",
"Customer_ID": [
"My_API_Key"
]
}
}'
我尝试使用的 python 代码是:
import requests
API_URL = "https://api.airtable.com/v0/restoftheurl"
data = {"Authorization": "Bearer My_API_Key","Content-type":
"application/json","fields": {"Item": "randomitem","Quantity":
"5","Customer_ID": ["randomrecord"]}}
r = requests.post(API_URL, data)
print(r.json())
响应是错误的地方:
{'error': {'type': 'AUTHENTICATION_REQUIRED', 'message': 'Authentication required'}}
我应该如何正确验证这个,或者我是这样的?
您需要区分 body(数据)和 headers。使用 json
命名参数自动将内容类型设置为 application/json
:
import requests
API_URL = "https://api.airtable.com/v0/restoftheurl"
headers = {
"Authorization": "Bearer My_API_Key"
}
data = {
"fields": {
"Item": "randomitem",
"Quantity": "5",
"Customer_ID": ["randomrecord"]
}
}
r = requests.post(API_URL, headers=headers, json=data)
print(r.json())