我正在尝试更新Google文档,当我尝试推送更新时显示googleapiclient.errors.HttpError: <HttpError 400 when requesting https://docs.googleapis.com/v1/documents/1UeorM9adOh8Nds1Z457RRKBZMkh0VZ_kn_jllpkzh7U:batchUpdate?alt=json returned "Invalid requests[0].updateTextStyle: At least one field must be listed in 'fields'. (Use '*' to indicate all fields.)">
,我不知道这是什么意思。
这是引发错误的方法
def update(request):
result = service.documents().batchUpdate(
documentId=DOCUMENT_ID, body={'requests': [request]}).execute()
return result
如果有人可以帮助,那就太好了!
这就是我的要求
request = {
'updateTextStyle': {
'range': {
'segmentId': None,
'startIndex': None, # gets filled with the proper number
'endIndex': None # gets filled with the proper number
},
'textStyle': {
"bold": False,
"italic": False,
"underline": False,
"strikethrough": False,
"smallCaps": False,
"backgroundColor": {
'color': {
'rgbColor': {
'red': 0.2,
'green': 0.2,
'blue': 0.2
}
}
},
"foregroundColor": {
'color': {
'rgbColor': {
'red': 0.96,
'green': 0.96,
'blue': 0.96
}
}
},
"fontSize": {
'magnitude': 10,
'unit': 'PT'
},
"weightedFontFamily": {
'fontFamily': 'Courier New OS',
'weight': 400
},
"baselineOffset": 'NONE',
"link": None
}
}
}
答案 0 :(得分:0)
At least one field must be listed in 'fields'. (Use '*' to indicate all fields.)
表示未在请求正文中设置fields
的属性。因此,例如,该修改如何?
},
"baselineOffset": 'NONE',
"link": None
}
}
}
},
"baselineOffset": 'NONE',
"link": None
},
"fields": "*" # Added
}
}
None
中的'range': {'segmentId': None, 'startIndex': None, 'endIndex': None},
和"link": None
被替换为正确的值。