使用 rest API 设置 sharepoint 列表项的作者 ID

Setting Author Id of sharepoint list item with rest API

我正在尝试创建一个新的列表项,但将创建者指定给插入记录的帐户以外的其他人,从某些文档看来,应该也可以设置创建者事实上,无论哪种方式对我来说都很好,下面的例子是我试图用创建的新记录更新现有记录。

我找到了一个更新 .net 创建的示例 API http://blogs.msdn.com/b/sowmyancs/archive/2008/03/14/can-we-update-the-values-of-created-by-modified-by-columns-in-sharepoint-lists.aspx

一切看起来都适用于此请求,但实际上并未更新该值。

POST http://sp/site/_api/web/lists/getByTitle('listtitle')/items(255) HTTP/1.1
X-HTTP-Method: MERGE
X-RequestDigest: <requestDigest>
IF-MATCH: *
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT; Windows NT 6.1; en-US) WindowsPowerShell/3.0
Content-Type: application/json;odata=verbose
Host: sp
Content-Length: 196

{
    "Author":  {
               "Id":  555
           },
    "__metadata":  {
                   "type":  "SP.Data.listtitleListItem"
               }
}

您需要将作者字段更新为非只读。您可以 post 来: /_api/web/lists/getByTitle('listtitle')/Fields('<createdbyguid>') 将字段 ReadOnlyField 更新为 false

之后对 AuthorId 的更新(但不是 Author { Id })将起作用。