我正在尝试创建Python脚本以更新我的Woo商务商店中的产品。文档建议使用curl:
curl -X PUT https://example.com/wc-api/v2/products/546 \
-u consumer_key:consumer_secret \
-H "Content-Type: application/json" \
-d '{
"product": {
"regular_price": "24.54"
}
}'
由于我正在使用python,我正在使用请求:
new={}
new['id']=555
new['regular_price'] = 1000
new['variations']=[]
new['attributes']=[{'name':'varatt1','variation':True,'options':['opt1','opt2']},{'name':'varatt2','variation':True,'options':['opt11','opt22']}]
new['type']='variable'
var1={}
var1['id']='111'
var1['attributes']=[{'name':'varatt1','option':'opt1'},{'name':'varatt2','option':'opt11'}]
new['variations'].append(var1)
f=json.dumps({'product':new})
header = {"Content-Type": "application/json"}
a=requests.put('http://endpoint?authstuff = done, data = f, headers = header)
问题
纯粹的拉丁字符一切正常,但如果我试图使用西里尔字母的变体,结果是不可预测的 - 有时它工作正常,有时数据部分丢失。第二个问题是,如果我尝试用所有这些标签发送描述 - 它们也会完全丢失。
我知道这里的问题是编码,但我对base64的实验没有给我任何帮助。还尝试在所有西里尔字符串上使用unquote - 没有结果。相关问题:是否可以废弃所有这些api并直接编辑Woo-commerce数据库?