我正在尝试在 Concur 中创建一个用户。我参考了这篇文章来获取 Xml 格式。
这是 http POST 请求(使用 POSTMAN),
要求
POST https://www.concursolutions.com/api/user/v1.0/users HTTP/1.1
Authorization: OAuth 0_xxxxxxxtoF3bsxxxBrNwzxxxx=
Accept: application/xml
Content-Type: application/xml; charset=utf-8
Host: www.concursolutions.com
Content-Length: 227
Expect: 100-continue
<Batch xmlns='http://www.concursolutions.com/api/user/2011/02'><UserProfile><EmpId>E0005</EmpId><FeedRecordNumber>1</FeedRecordNumber><LoginId>myuser1@mycompany.com</LoginId><Password>myP@@sword</Password></UserProfile></Batch>
回复
000000B2 <Error><Message>batch element is missing. Please check your
request.</Message><Server-Time>2016-03-28T19:34:02</Server-Time><Id>XXXXXXXX-AACE-4A49-8EE6-669EF3XXXXX</Id></Error>
00000000
为什么它抱怨缺少“批处理”元素,但显然它在内容中?有没有我可以参考的官方文档来获取创建用户的 XML 格式?
注意:我已经在其中标记了 C#,因为我正在尝试让我的 C# 代码为此工作。我已经编写了代码来生成上述请求并获得相同的响应。
注意:在参考帖子中,<EmpId>
标签未关闭。当我第一次尝试时,我收到一条错误消息,提示“请求 XML 无效。:第 1 行位置 242 上的 'EmpId' 开始标记与 'UserProfile' 的结束标记不匹配。第 1 行,位置 328。”。所以我在我的 XML 中纠正了这个错误。然后我收到批处理元素丢失错误。因此,我并不完全相信 XML 结构。