我们试图提出一个简单的请求,使用简单的redmine创建一个问题(这应该非常简单)--我们已经从postman那里尝试过了,并且通过python代码也尝试过了,我们总是收到200的问题列表,但是没有201可以创建。
它似乎不在乎我们是否使用POST、PUT或GET方法,它总是返回带有问题列表的200。因此,我们放弃了用户权限或连接中的一个问题。
由于没有错误管理,它在接口(API)中执行并作为响应返回,因此无法确定是否存在xml问题。
enter code here
def create_issue():
url = "http://domain.easyredmine.com/issues.xml"
payload = ""
headers = {
'Content-Type': "application/xml",
'Authorization': "Basic @token=",
'Cache-Control': "no-cache",
'Postman-Token': "@postman_token"
}
try:
response = requests.request("POST", url, data=payload, headers=headers)
except Exception as e:
print("Error", e)
print(response.text)XML数据
<issue>
<project_id>test_01</project_id>
<status_id>1</status_id>
<priority_id>1</priority_id>
<author_id> @author</author_id>
<subject>issue subject</subject>
<description>
issue description
</description>
<start_date>2014-04-11</start_date>
<due_date>2014-04-11</due_date>
<estimated_hours>1.0</estimated_hours>
</issue>正如评论所说,这应该很容易,但我们很难被塞进去。
任何帮助都是非常感谢的。
提前谢谢你。
发布于 2018-09-26 08:18:43
好吧,没有什么比新方法更好的了,
首先,我已经更改为https或url (昨天由于某种原因,这不起作用),但今天它起作用了,在https中,我们得到了一些有用的响应信息。
对于那些试图获取更多信息的人,您可以使用url (您必须被记录)。
https://@yourdomain.easyredmine.com/issues.xml
在这里,您可以获得有用的信息来构建xml有效负载,例如id有什么特定的项目,以及如何引用标签。
例如,在https调用(POST)中使用此xml
<issue>
<project_id>194</project_id>
<priority>10</priority>
<tracker>1</tracker>
<author>Alberto Elvira</author>
<subject>TEST ERM API</subject>
<description>
TEST ERM API from POSTMAN
</description>
</issue>结果反应正常
希望这能帮到别人,因为我在Stack或googling中没有看到任何关于这件事的报道。基本但有用的信息!
谢谢!
https://stackoverflow.com/questions/52512193
复制相似问题