使用HTTP请求查询修改Sharepoint List Item

学习随笔

最近开发自动化流的过程中发现,使用Sharepoint更新项时,如果Sharepoint List Item的列是必填项,且为URL格式时,在设置更新项的参数时,该列必须设置值。这会导致执行更新项后,List里面的URLdescription会被更新掉。

因此,List URL列会变成冗长的链接,观感不好。

在更新Sharepoint List时,为了保留List URL的description,需要寻求其他方式:使用HTTP请求。

具体步骤如下:

1. 新建一个Trigger,以“创建项”为例子,具体设置参数也很简单:

站点地址:列表所在地址,空白时右侧会有一个向下的箭头,点击后会自动跳出可访问的所有站点,选择你需要的站点即可。

列表名称:点击向下的箭头,自动跳出该站点所有列表,选择该列表即可。若自动跳出的里面找不到列表,可以访问列表后,在URL里面找到ID,复制过去即可。

2.新建一个action:Send an HTTP request to SharePoint。

这里我们只是需要更新URL以外的列,因此使用方法Patch:

站点地址:与创建项的站点地址一致

方法:Patch

Uri:_api/web/lists/getbytitle('你的列表名')/items(修改的Item ID)。由于列表显示名会被更改,找到实际的列表名可以通过访问列表时,在URL里面找到:

例如某列表链接显示为:站点/Lists/列表名/AllItems.aspx, 列表名有空格时,空格会替换成%20,填写Uri列表名时,需要替换回空格。Item ID可以关联创建项里面的ID

标头:具体意义不明,但是官网有例子,直接Copy了。有关于Sharepoint Rest API的介绍。

正文:填写具体修改的内容,不明格式的话,可以先通过HTTP请求把Item都获取出来,然后Copy要求改的部分:

JSON文本里面Item的__metadata必须要有,用于识别修改的Item,etag可以没有。其他需要修改的列按照JSON格式写入即可:

紫色的部分是属性名,不能改,type不能改,直接Copy用,就改后面的具体的值。

设置完就可以进行测试了。运行结果符合预期,List里面的URL缩略语保存完整!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值