0
我有點困惑爲什麼以下將無法正常工作。Python不會在ConnectWise中修補json。
我通過請求連接到我們的ConnectWise API。我得到了答覆,然後我通過解析找到我正在尋找的門票。然後我試圖修補票來更改某些信息。
通過API返回的示例json。
{
"id": 12345,
"summary": "[CompanyName][ComputerName] Disk Space Check - drive G:",
"recordType": "ServiceTicket",
"board": {
"id": 1,
"name": "Board1",
},
"status": {
"id": 5,
"name": "NewTicket",
},
"owner": {
"id": 1,
"identifier": "",
一旦我確定了需要使用的票證,我嘗試修補它。
def assign_ticket(self, ticket):
add_resource = [
{'op': 'replace', 'path': '/board/name', 'value': 'Board2'},
{'op': 'replace', 'path': '/status/name', 'value': 'NewTicket2'},
{'op': 'replace', 'path': '/owner/identifier', 'value': 'MyBrainHurts'}
]
r = requests.patch(self.url + self.url_ticket + str(ticket), json=add_resource, headers=self.header)
print(r.status_code)
它返回一個200狀態碼來完全正確地指示一切,但只更新/ owner/identifier字段。其他兩個都不是。我已經Google'd好幾天了,並嘗試了多種代碼,但我不明白爲什麼它不會改變板子或狀態。有任何想法嗎?
當通過非Python方式(例如,捲曲)執行修補時,PATCH工作嗎? – jwodder
這是一個很好的問題。我討厭承認我還沒有想過嘗試。我現在就去試試看... – MBH