如何在 sp2013 中使用 REST api 将用户添加到共享点列表项用户字段?

2023-11-24

我有一个基本的共享点列表,其中包含人员字段,现在我尝试使用 REST API 添加新的列表项,并尝试将人员字段设置为我的别名,但它不起作用并引发以下错误。看起来我的用户数据传递方式有问题,但我无法在线找到任何帮助。

你们能否帮助我们以正确的方式拨打此电话,我们将不胜感激。

我的代码----------

function runAjax(){   var d  = JSON.stringify({"__metadata":{"type":"SP.Data.RepositoryItem"},"Owners":"-1;#[email protected]"});
jQuery.ajax({ 
    url: "https://microsoft.sharepoint.com/sites/mysite/docstore/_api/web/lists/GetByTitle('Repository')/items(1580) ",
    type: "POST", 
    headers: { 
        "accept": "application/json;odata=verbose", 
        "content-type": "application/json;odata=verbose", 
        "X-RequestDigest": $("#__REQUESTDIGEST").val(), 
        "X-HTTP-Method": "MERGE", 
        "If-Match": "*" 
    }, 
    data:d, 
    success: function (_a) { 
        console.log(JSON.stringify(_a)); 
    }, 
    error: function (_e) { 
        console.error(JSON.stringify(_e)); 
    } 
});}runAjax(); 

我得到的错误是

Updation fail
{"readyState":4,"responseText":"{\"error\":{\"code\":\"-1, Microsoft.SharePoint.Client.InvalidClientQueryException\",\"message\":{\"lang\":\"en-US\",\"value\":\"A 'PrimitiveValue' node with non-null value was found when trying to read the value of a navigation property; however, a 'StartArray' node, a 'StartObject' node, or a 'PrimitiveValue' node with null value was expected.\"}}}","status":400,"statusText":"Bad Request"} 

如何使用 SharePoint REST API 设置用户字段值

假设以下函数用于使用 SharePoint REST 创建列表项:

function createListItem(webUrl,listName,itemProperties) 
{    
    return $.ajax({       
       url: webUrl + "/_api/web/lists/getbytitle('" + listName + "')/items",   
       type: "POST",   
       processData: false,  
       contentType: "application/json;odata=verbose",
       data: JSON.stringify(itemProperties),
       headers: {   
          "Accept": "application/json;odata=verbose",
          "X-RequestDigest": $("#__REQUESTDIGEST").val()
       }  
    });
}

用户字段值的格式:

  • 单值用户字段:'<user field name>' : <user id>
  • 多值用户字段:'<user field name>' : { 'results': [<array of user ids>] }

多用户字段值

该示例演示了如何创建任务项并指定multi-valued AssignedTo field:

//Create a Task item
var taskProperties = {
    '__metadata' : { 'type': 'SP.Data.TasksListItem' },
    'Title': 'Order approval',
    'AssignedToId' : { 'results': [10] }
};
createListItem(_spPageContextInfo.webAbsoluteUrl,'Tasks',taskProperties)
.done(function(data)
{
   console.log('Task has been created successfully');
})
.fail(
function(error){
    console.log(JSON.stringify(error));
});

单个用户字段值

该示例演示了如何创建任务项并指定single-valued AssignedTo field:

//Create a Task item
var taskProperties = {
    '__metadata' : { 'type': 'SP.Data.TasksListItem' },
    'Title': 'Order approval',
    'AssignedToId' : 10
};
createListItem(_spPageContextInfo.webAbsoluteUrl,'Tasks',taskProperties)
.done(function(data)
{
   console.log('Task has been created successfully');
})
.fail(
function(error){
    console.log(JSON.stringify(error));
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 sp2013 中使用 REST api 将用户添加到共享点列表项用户字段? 的相关文章

随机推荐

  • C++中虚表的结构是怎样的?

    例如 我有两个 接口 和类类型 class IPlugin public virtual void Load void 0 virtual void Free void 0 class IFoo public virtual void Fo
  • 在哪里下载 your_client_secret_File.json 文件

    我正在使用 YouTube API 但首先 我需要凭证文件 your client secret File json 通过遵循本教程https developers google com youtube analytics referenc
  • Clang 中 __int128_t 的错误?

    这段小代码可以使用 GCC 和 Clang 进行编译 但会给出不同的结果 include
  • Python Twisted 中的内存泄漏:它在哪里?

    我有一个负载下的 Twisted 服务器 当服务器处于负载状态时 内存使用量会增加 并且永远不会被回收 即使没有更多的客户端 下次进入高负载时 内存使用量会再次增加 这是当时情况的快照 RSS 内存为 400 MB 通常最大客户端数应为 2
  • HTML5 验证中的空标题警告

    我尝试验证我的 HTML 代码 但发现了此警告 空标题 See here 显然标题不为空 的内容 h3 h3 在 WordPress 中由以下方式生成the title 功能 所以 我不明白为什么会发生这种情况 有人可以解释一下问题是什么吗
  • 使用接口进行 IList 和 List 转换

    我大致了解接口 继承和多态性 但有一件事让我感到困惑 在这个例子中 Cat实施IAnimal而且当然List实施IList IList
  • 如何在 html 游戏中保存进度

    我想知道如何保存玩家在我正在制作的游戏中取得的进度 我可以通过 cookies 来做到这一点吗 或者我还可以如何将其保存到玩家的计算机上 感谢您的所有帮助 使用 Javascript 在本地保存几乎有两种选择 它们是cookies and
  • 将 Eigen 库添加到 Android NDK

    我需要在我的 Android Studio 项目中包含 Eigen 库来执行一些线性代数运算并使用我为桌面开发的一些 C 代码 我一直在寻找有关此主题的信息 但没有太多 而且我是 Android NDK 的新手 Eigen 库不需要编译 所
  • 正则表达式匹配除字符列表之外的所有内容

    我想匹配包含除指定字符之外的所有内容的行 I V X M C D L new Regex is I V X M C D L 应该匹配除中提到的字符之外的所有内容OR list 应匹配 name is a 不应该匹配 edition is I
  • Python IMAP 搜索指定电子邮件地址或发送至指定电子邮件地址

    我将其与 Gmail 的 SMTP 服务器一起使用 并且我想通过 IMAP 搜索发送到某个地址或从某个地址接收的电子邮件 这就是我所拥有的 mail imaplib IMAP4 SSL imap gmail com mail login u
  • 命名约定 - C++ 和 C# 变量中的下划线

    常见的是看到一个 var类字段中的变量名 下划线是什么意思 所有这些特殊命名约定都有参考吗 下划线只是一种约定 而已 因此 每个人的使用总是有些不同 以下是我对这两种语言的理解 在C 中 下划线通常表示私有成员变量 在 C 中 我通常只在为
  • 使用绝对定位是否被认为是不好的做法? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我正在开发一个网页 在其中放置一个类似国际象棋的游戏的棋盘 以及几个棋子托盘 这一切都是使用 HTML 完成的 使用 jQuery 在玩游戏时进行动态更新 在某个地方 我认为在页面内使用元
  • p5.j​​s 中的碰撞处理

    我一直在使用 p5 js 并且已经弄清楚如何让对象来检测碰撞 但我对如何处理这些碰撞感到非常困惑 我尝试将玩家速度设置为 0 但随后玩家卡住了 我也尝试过将碰撞分开到每一侧 但这也不起作用 这是我的带有碰撞函数的玩家构造函数 class P
  • React CSS 模块的几个 CSS 文件

    我有2个相同的组件 它们的样式有点不同 所以我想重用通用样式 但不想为它们使用全局CSS 我该如何实现呢 import React from react import commonStylesfrom common table css im
  • 有没有在react-native中实现JavaScriptModule的指南?

    有兴趣直接实施native to javascript调用react native 但没有找到任何指南 请帮助提供一些在 React Native 中创建和注册本机 JavaScript 模块的示例 已经从官方那里找到了代码原生模块 and
  • 如何在 Oracle 的 SQLData.writeSQL() 中将 java.sql.Array 写入 java.sql.SQLOutput

    我已经实施了java sql SQLData为了使用 ojdbc6 将 UDT 对象绑定到准备好的语句 现在 我的一些 UDT 包含数组 我现在需要做的是 class MyType implements SQLData public voi
  • 批量:删除文件扩展名

    我有来自维基百科的以下批处理脚本 echo off for R C Users Admin Ordner f in flv do echo f pause 在 for 循环中 所有扩展名为 flv 的文件都会得到回显 但我想对文件进行一些操
  • 在 Perl 中对非常大的数字执行数学运算

    我遇到的情况是 数据文件中的某些值具有 64 位环绕 这使得它们非常大 例如 18446744073709551608 所以我必须对 2 64 进行减法 我用简单的方法尝试了这个 2 64 18446744073709551608 但我猜这
  • 从字符串创建 MySQL SET

    有没有办法在 MySQL 中从一串分隔值创建一个集合 例如 快速的棕色狐狸 gt 那个 快速 棕色 狐狸 一种没有位调整的逆 EXPORT SET Regards 如果您尝试在IN语句 您可以进行如下比较 而不是拆分字符串 SELECT F
  • 如何在 sp2013 中使用 REST api 将用户添加到共享点列表项用户字段?

    我有一个基本的共享点列表 其中包含人员字段 现在我尝试使用 REST API 添加新的列表项 并尝试将人员字段设置为我的别名 但它不起作用并引发以下错误 看起来我的用户数据传递方式有问题 但我无法在线找到任何帮助 你们能否帮助我们以正确的方