我们在Microsoft Outlook中遇到了严重的错误。 两个联系人具有相同的唯一标识符。 两个联系人都位于Outlook中的同一文件夹中。
{
"@odata.etag":"W/"EQAAABYAAAC8DOd9nfEKQIKH9B+wE/6tAAMS+rHg"",
"id":"AAMkAGZmZDhjMmMwLWM5YWYtNGQ4My1iNjY3LTcyMmY1ZDJjMGQyYQBGAAAAAAA1hjIPSspAQpY74RqZjH0hBwC8DOd9nfEKQIKH9B_wE-6tAAMSuJSLAAC8DOd9nfEKQIKH9B_wE-6tAAMSuJroAAA=",
"displayName":"mac mac"
}
....
{
"@odata.etag":"W/"EQAAABYAAAC8DOd9nfEKQIKH9B+wE/6tAAMS+onF"",
"id":"AAMkAGZmZDhjMmMwLWM5YWYtNGQ4My1iNjY3LTcyMmY1ZDJjMGQyYQBGAAAAAAA1hjIPSspAQpY74RqZjH0hBwC8DOd9nfEKQIKH9B_wE-6tAAMSuJSLAAC8DOd9nfEKQIKH9B_wE-6tAAMSuJrOAAA=",
"displayName":"smaran13"
}
第一次联系是使用Outlook beta批处理API创建的。
第二个联系人是在Chrome浏览器的Outlook Web App内部创建的。
两个ID相同。
尽管联系人是使用Outlook beta API创建的,但仍然存在唯一标识符重复的问题。
我们无法使用Microsoft graph API通过ID提取第一个联系人。
在Microsoft graph API中使用id提取联系人仅提供第二个联系人。
获取第一个联系人的唯一方法是获取所有联系人
下面是代码
的样品POST /api/beta/$batch
Host: outlook.office.com
Authorization: Bearer <access_token>
Content-Type: multipart/mixed; boundary=batch_ZohoGadgets
Accept: multipart/mixed
Prefer: odata.continue-on-error
--batch_881a83c8-4fdb-11e9-8647-d663bd873d93
Content-Type: application/http
Content-Transfer-Encoding: binary
POST /api/beta/me/contacts HTTP/1.1
Content-Type: application/json;odata=verbose
{"Surname":"Sample Name"}
--batch_881a83c8-4fdb-11e9-8647-d663bd873d93
GET /v1.0/me/contactfolders/{Id}/contacts?$select=id,displayName&$top=999
Host: graph.microsoft.com
Authorization: Bearer <access_token>
我们的帐户中有许多具有重复ID的联系人。
答案 0 :(得分:3)
不重复。这两个ID在结尾的第四个元素上有所不同-“ o”与“ O”。