API события обновления в Microsoft Graph не сохраняет имя местоположения, когда locationType используется по умолчанию - PullRequest
0 голосов
/ 01 октября 2018

Если я планирую собрание с помощью scheduleEvent API, для которого в качестве местоположения задано «Starbucks», locationType: default, а затем попробуйте обновить то же собрание, изменив тему или добавив описание, обновленный объект событиятеряет displayName местоположения по умолчанию.

Объект, переданный для обновления собрания:

{  
   "id":"",
   "subject":"Harsh <> Alex",
   "body":{  
      "contentType":"html",
      "content":"testing"
   },
   "start":{  
      "dateTime":"2018-10-01T11:00:00.000",
      "timeZone":"Eastern Standard Time"
   },
   "end":{  
      "dateTime":"2018-10-01T11:30:00.000",
      "timeZone":"Eastern Standard Time"
   },
   "attendees":[  
      {  
         "emailAddress":{  
            "address":"Alex.Knipfer@ascendum.com",
            "name":"Alex Knipfer"
         },
         "type":"required"
      }
   ],
   "location":{  
      "displayName":"starbucks"
   },
   "locations":[  

   ]
}

Объект, возвращенный после успешного обновления API:

{  
   "@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users('c1483a11-5532-484d-a7aa-0e939859b5fd')/calendar/events/$entity",
   "@odata.etag":"W/\"Ru9RDsGjEEawioioCP04/wAAS32SPg==\"",
   "id":"",
   "createdDateTime":"2018-10-01T14:41:13.9684656Z",
   "lastModifiedDateTime":"2018-10-01T14:52:36.2126606Z",
   "changeKey":"Ru9RDsGjEEawioioCP04/wAAS32SPg==",
   "categories":[  

   ],
   "originalStartTimeZone":"Eastern Standard Time",
   "originalEndTimeZone":"Eastern Standard Time",
   "iCalUId":"",
   "reminderMinutesBeforeStart":15,
   "isReminderOn":true,
   "hasAttachments":false,
   "subject":"Harsh <> Alex",
   "bodyPreview":"testing",
   "importance":"normal",
   "sensitivity":"normal",
   "isAllDay":false,
   "isCancelled":false,
   "isOrganizer":true,
   "responseRequested":true,
   "seriesMasterId":null,
   "showAs":"busy",
   "type":"singleInstance",
   "webLink":"https://outlook.office365.com/owa/?itemid=AAMkAGQ2ZWYyYTMxLWE5YjYtNDlhMy04MDk4LWVkMGFmMTUyNzFjOQBGAAAAAAAWVy30JPLLQJUrznjmkVbhBwBG71EOwaMQRrCKiKgI%2FTj%2FAAAAAAENAABG71EOwaMQRrCKiKgI%2FTj%2FAABLkHvdAAA%3D&exvsurl=1&path=/calendar/item",
   "onlineMeetingUrl":null,
   "recurrence":null,
   "responseStatus":{  
      "response":"organizer",
      "time":"0001-01-01T00:00:00Z"
   },
   "body":{  
      "contentType":"html",
      "content":"<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n<meta content=\"text/html; charset=us-ascii\">\r\n</head>\r\n<body>\r\ntesting\r\n</body>\r\n</html>\r\n"
   },
   "start":{  
      "dateTime":"2018-10-01T11:00:00.0000000",
      "timeZone":"Eastern Standard Time"
   },
   "end":{  
      "dateTime":"2018-10-01T11:30:00.0000000",
      "timeZone":"Eastern Standard Time"
   },
   "location":{  
      "displayName":"",
      "locationType":"default",
      "uniqueIdType":"unknown",
      "address":{  

      },
      "coordinates":{  

      }
   },
   "locations":[  

   ],
   "attendees":[  
      {  
         "type":"required",
         "status":{  
            "response":"none",
            "time":"0001-01-01T00:00:00Z"
         },
         "emailAddress":{  
            "name":"Alex Knipfer",
            "address":"Alex.Knipfer@ascendum.com"
         }
      }
   ],
   "organizer":{  
      "emailAddress":{  
         "name":"Harsh Shah",
         "address":"Harsh.Shah@ascendum.com"
      }
   }
}

Итак, displayName в возвращенном объекте не сохраняется.Как я могу сохранить displayName?

1 Ответ

0 голосов
/ 01 октября 2018

Я полагаю, это потому, что вы сначала устанавливаете Location в

"location":{  
  "displayName":"starbucks"
}

и , а затем устанавливаете Locations в пустую коллекцию:

"locations":[  

]

Вы должны установить только один из них, а не оба.Что еще более важно, вы должны включать только измененные свойства в вашу полезную нагрузку.

Попробуйте просто отправить ресурс Location в своем запросе PATCH:

PATCH https://graph.microsoft.com/v1.0/me/events/{event-id}

{
  "location": {
    "displayName": "starbucks",
    "locationType": "restaurant"
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...