通过 Shopify 的 PUT 请求的重定向 302 API
Redirection 302 for PUT request via Shopify API
设置
我正在使用 Shopify Admin API Python 图书馆通过私人应用程序连接访问我们的商店。
GET 请求工作正常,即 product = shopify.Product.find(6514193137813)
检索产品数据。
问题
如果我想更新现有产品,PUT 请求不起作用。即,
product.title = 'test123'
product.save()
returns一个Redirection: Response(code=302,...)
.
到目前为止
我已经仔细检查了读写权限。
然后我在 Shopify 论坛上发现了这个问题:https://community.shopify.com/c/Shopify-APIs-SDKs/API-Fulfillment-Status-Code-302-Redirect/m-p/747383/highlight/true#,其中 Shopify 工作人员 hassain 指出 Shopify 阻止您对 POST 请求使用 HTTP Basic Auth饼干.
但由于他的声明是关于 POST 请求的,我不确定这是否相关。
如何使 PUT 请求起作用?
我关注了 MalcolmInTheCenter's 评论并使用他的请求代码成功更新了产品,
import requests
payload = {
"product":{
"title":"My new title"
}
}
api_key = "xxxxx"
password="xxxxxx"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
#send email to customer through events endpoint
r = requests.put("https://"+api_key+":"+password+"@MYSTORE.myshopify.com//admin/api/2021-01/products/{PRODUCT_ID}.json", json=payload, headers=headers)
print(r)
设置
我正在使用 Shopify Admin API Python 图书馆通过私人应用程序连接访问我们的商店。
GET 请求工作正常,即 product = shopify.Product.find(6514193137813)
检索产品数据。
问题
如果我想更新现有产品,PUT 请求不起作用。即,
product.title = 'test123'
product.save()
returns一个Redirection: Response(code=302,...)
.
到目前为止
我已经仔细检查了读写权限。
然后我在 Shopify 论坛上发现了这个问题:https://community.shopify.com/c/Shopify-APIs-SDKs/API-Fulfillment-Status-Code-302-Redirect/m-p/747383/highlight/true#,其中 Shopify 工作人员 hassain 指出 Shopify 阻止您对 POST 请求使用 HTTP Basic Auth饼干.
但由于他的声明是关于 POST 请求的,我不确定这是否相关。
如何使 PUT 请求起作用?
我关注了 MalcolmInTheCenter's 评论并使用他的请求代码成功更新了产品,
import requests
payload = {
"product":{
"title":"My new title"
}
}
api_key = "xxxxx"
password="xxxxxx"
headers = {"Accept": "application/json", "Content-Type": "application/json"}
#send email to customer through events endpoint
r = requests.put("https://"+api_key+":"+password+"@MYSTORE.myshopify.com//admin/api/2021-01/products/{PRODUCT_ID}.json", json=payload, headers=headers)
print(r)