0

我还没有找到使用 onennote API 从页面内容中删除项目的方法。

假设我的页面内容是

<body>
    <div id="div:{681ddef6-e8ad-0de3-2439-dcc668303696}{34}">
        <p id="p:{f5837c83-d816-4337-ab6d-a52abde869a6}{13}">Delete me</p>
        <p id="p:{1710a020-7fa3-46cb-a8ab-64209696e083}{14}">Keep me/p>
    </div>
</body>

我可以建立一个PATCH插入、追加、预先准备的请求……但这不是删除内容的说明。

我试图用一些空内容替换该段落:

[{
  'target': 'p:{f5837c83-d816-4337-ab6d-a52abde869a6}{13}',
  'action': 'replace',
  'content': ' '
},
]

但这会导致错误:

{
  "error":{
    "code":"20121","message":"The PATCH argument $content:  is invalid.","@api.url":"http://aka.ms/onenote-errors#C20121"
  }
}

有什么建议吗?谢谢。

4

3 回答 3

2

只需在 microsoft graph 中查看此内容,您就可以将内容替换为 HTML 换行符。

[{
      'target': 'p:{f5837c83-d816-4337-ab6d-a52abde869a6}{13}',
      'action': 'replace',
      'content': '<br/>'
    }]

这似乎删除了相应的元素(尽管空白文本框仍然可以选择)

于 2016-10-17T15:50:11.170 回答
0

虽然 API 不支持 PATCH 页面中的“DELETE”操作(我鼓励您在我们的用户语音网页https://onenote.uservoice.com/forums/245490-onenote-developer-apis中添加一个条目),但您可以用您想要的任何新内容替换整个页面。

另一个选项类似于 Manoj 建议的 - 将要删除的元素的父元素替换为相同的内容减去要删除的元素。

于 2016-10-18T17:06:29.773 回答
-1

替换类型的 PATCH API 操作的内容参数应该是有效的 HTML。将空格指定为替换内容是无效的。

例如,您可以探索替换比单个段落更高级别的元素来实现您的方案。

于 2016-10-10T23:34:50.200 回答