在Sharepoint 2013中使用REST更新托管元数据值

时间:2016-07-04 11:59:25

标签: javascript rest sharepoint sharepoint-2013

我能够更新正常的'通过我的REST调用获取元数据值。 我还尝试通过同一个呼叫更新托管元数据值

没有错误。 正常值会按预期更新,但MMD值会保持emtpy

这是我的示例代码:

//DEMO URL
var url = "[...]/_api/Web/Lists(guid'nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn')/Items(nn)";

var updateObject = {};

//MANAGED METADATA FIELD FOR SETTING
updateObject["MMD_FIELD"] = {
    "__metadata": { "type": "SP.Taxonomy.TaxonomyFieldValue" },
    "Label": "nn",
    "TermGuid": "047cb946-451d-45bf-882a-52e47e97a871",
    "WssId": -1
};

//NORMAL METADATA "TEXT-FIELD" FOR SETTING
updateObject["Subject"] = "WORKS";

//FILETYPE
updateObject["__metadata"] = {'type':'SP.ListItem'};

//AJAX CALL     
$.ajax({

    url: url,
    type: "POST",
    data: JSON.stringify( updateObject ),
    headers: { 
      "Accept": "application/json;odata=verbose ",
      "Content-Type": "application/json;odata=verbose ",
      "X-RequestDigest" : $("#__REQUESTDIGEST").val(),
      "X-HTTP-Method": "MERGE",
      "If-Match": "*"
   }

});

之后,'主题'该文件是' WORKS' - 但是没有机会更新托管元数据字段。

尝试:

  • 其他一些MMD-Fields
  • 在" If-Match"
  • 中定义ETag
  • 其他一些X-HTTP-Methods(PATCH ...)
  • 其他条款等。
  • GUID,标签和名称是100%正确的
  • 在单独调用中尝试正常和mmd值

1 个答案:

答案 0 :(得分:0)

使用SharePoint REST API不能更新MMD(分类)字段,因为还没有不支持术语存储。您无法查询条件集并获取与列关联的条件标签的指南。