![](/img/trans.png)
[英]Jira POST & PUT Rest Calls return Error 400 from Python
[英]400 Error while trying to POST to JIRA issue
我試圖將JIRA問題中的'transition'屬性設置為完成(根據文檔,該屬性為10000)。 根據文檔,此錯誤是“如果未指定轉換”。
我還使用了?expand = transitions.fields來驗證10000是否完整。
使用這些文檔https://docs.atlassian.com/jira/REST/latest/#api/2/issue-doTransition https://jira.atlassian.com/plugins/servlet/restbrowser#/resource/api-2- issue-issueidorkey-transitions / POST
這是我的要求
url = 'http://MYURL/rest/api/2/issue/ISSUE-ID/transitions'
payload1 = open('data3.json', 'r').read()
payload = json.loads(payload1)
textFile = requests.post(url, auth=('username', 'password'), json=payload)
我的data3.json文件中的內容是
{
"transition": 10000
}
編輯:我也將JSON更改為此,並得到500錯誤
{
"transition": {
"id": "10000"
}
}
我得到的錯誤
{"errorMessages":["Can not instantiate value of type [simple type,classcom.atlassian.jira.rest.v2.issue.TransitionBean] from JSON integral number;no single-int-arg constructor/factory method (through reference chain:com.atlassian.jira.rest.v2.issue.IssueUpdateBean[\"transition\"])"]}400
我非常有信心我的問題在我的json文件中,因為我多次在此代碼段上方的代碼中使用GET,但我可能是錯的。
我相信我遇到的問題是一個流程流。 我不能從我的問題開始跳到“完成”。 但是,我可以從創建的問題轉到“完成”。
{
"transition": {
"name": "Done",
"id": "151"
}
}
因為這滿足了我的需要,所以我將使用它。 如果我找到完成票的方法,我會回發。
另外,我認為我們自定義JIRA的事實導致我將“完成”作為有效過渡,即使事實並非如此。
是的,您說對了JSON是錯誤的,因為值不是數字,字符串,對象或數組,所以它甚至都不是有效的json。 醫生說:
可以使用/rest/api/2/issue/{issueIdOrKey}/transitions?expand=transitions.fields資源來確定可以在字段參數或更新參數中進行轉換的字段。
因此,您需要在/rest/api/2/issue/{issueIdOrKey}/transitions?expand=transitions.fields
上執行get請求以獲取可能值的列表,然后在json中進行設置
{
"transition": {
"id" : "an_id_from_response"
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.