我正在尝试使用Microsoft Graph API的订阅终结点来建立将我的CRM中的联系人与用户Outlook帐户上的联系人连接的webhook。我已经创建了一些订阅,但是当我每次从端点获得响应时尝试获取它们的列表时,它就是一个不同的列表。
我想重新开始创建订阅的整个过程,但是由于这些订阅已经存在,所以我无法回到基线。我无法正确访问它们,因为每个请求都有不同的列表。这是我正在运行的用于联系订阅端点的当前功能。
return new Promise((resolve, reject) => {
this.azureAuthResource.getAccessToken(accessToken => {
const header = {
headers: { Authorization: 'Bearer ' + accessToken }
};
this.client.get(`https://graph.microsoft.com/v1.0/subscriptions?top=10000`, header, data => {
data = JSON.parse(data.toString());
console.log('got subscriptions');
resolve(data);
});
});
});
这是我收到的订阅之一的示例
changeType: "updated"
clientState: null
creatorId: "7e47df1e-7f11-45ca-a89a-d63dc83fdfa6"
expirationDateTime: "2019-04-05T17:43:36.449Z"
id: "ca39cff3-6f8a-49c2-aa84-c3777889ffeb"
notificationUrl: "https://us-central1-batteries-fb.cloudfunctions.net/graphContactSubscription"
resource: "users/sknopp@retrievtech.com/contacts"
但是每次我运行上述功能时,我得到的订阅列表都大不相同。一个请求可能给了我7个订阅,几秒钟的等待后,我再次运行该函数并收到300,下一个可能返回800。我遍历了较大的响应,并且有一些资源重复,但是Id是重复项之间存在差异。有人可以向我解释为什么会发生这种情况吗?