![](/img/trans.png)
[英]Solve SoapClient error: “Object reference not set to an instance of an object.”
[英]Contact creation through Graph API producing “Object reference not set to an instance of an object.”
我一直在使用Graph API在主帳戶和我們組織的所有Office 365帳戶之間進行聯系人創建和同步。 直到過去一個月左右,它一直運行良好。
我的同步過程包括查詢主帳戶的特定文件夾中的聯系人,對其進行緩存,然后遍歷目標用戶列表,並在必要時創建聯系人。 獲取聯系人列表,創建聯系人文件夾以及刪除聯系人仍然可以按預期進行。 創建聯系人將返回“ ErrorInternalServerError:對象引用未設置為對象的實例。”
我一直在使用client_credentials流,並在Azure AD管理面板中檢查我的應用程序是否具有適當的憑據。 以下是我要發布的用於創建聯系人的JSON對象。 無論聯系人還是目標用戶都在發生這種情況。
{
"categories": [],
"birthday": null,
"fileAs": "GPS 00 Bob, Todd",
"displayName": "GPS 00 Bob, Todd",
"givenName": "Todd",
"initials": "T.G.0.B.",
"middleName": "",
"nickName": null,
"surname": "GPS 00 Bob",
"title": "",
"yomiGivenName": null,
"yomiSurname": null,
"yomiCompanyName": null,
"generation": "",
"emailAddresses": [
{
"name": "Email",
"address": "todd.bob@contactsyncing.com"
}
],
"imAddresses": [
""
],
"jobTitle": "Chief Financial Officer",
"companyName": "",
"department": "",
"officeLocation": null,
"profession": null,
"businessHomePage": null,
"assistantName": null,
"manager": null,
"homePhones": [
""
],
"mobilePhone": "",
"businessPhones": [
""
],
"homeAddress": {
"street": "",
"city": "",
"state": "",
"countryOrRegion": "",
"postalCode": ""
},
"businessAddress": {
"street": "701 East Lumbar Ave",
"city": "Minot",
"state": "ND",
"countryOrRegion": "United States of America",
"postalCode": "68745"
},
"otherAddress": {},
"spouseName": null,
"personalNotes": null,
"children": []
}
編輯其他信息:我將發布其ID的特定聯系人文件夾。 這是URL的示例: https : //graph.microsoft.com/v1.0/users/91bbdb7b-3b41-474c-93c9-99b1da960c18/contactFolders/AAMkADFlNzQ5NGQ5LTEwNjYtNGFiZS04NDlhLTViOGE0YzMzZjI3OQQUuCAAA1YCYYGYHYCYJAYCYJAYCYYGYAAAA1CYHYKYAAAA1CYHYAJHYCYAAAA1CYHYAJHYCFA1A1C1YC1YC1YC1YC1YC1A1CJ1YC1YC1YC1YC1YC1YC1Y1CJ1Y國業務發展部
該contactFolder ID是否正確形成? /編輯
該腳本是用PHP編寫的,我只是在卷曲這些請求。 任何想法是建議,將不勝感激。 讓我知道其他信息是否有幫助。
謝謝!
在將聯系人字段過濾到最低限度然后將它們逐個重新添加后,我發現生日字段存在錯誤。 似乎Graph API不再為此接受null值。 如果未指定生日,則完全刪除該字段似乎已解決了該問題。
我認為這已解決。 也許應該更新Graph API文檔以反映這一事實? 此外,提高API對此錯誤的響應似乎是審慎的做法。 “ InternalServerError”沒有充分描述原因。
謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.