2015-01-13 1 views
0

Из документации (https://developers.google.com/google-apps/calendar/v3/sync):Simulate истечения синхронизации маркеров при вызове Google Calendar API

Иногда маркеры синхронизации аннулируется сервером, по различным причинам, включая лексем истечения срока действия или изменения в соответствующих ACL. В таких случаях сервер будет отвечать на инкрементный запрос кодом ответа 410. Это должно вызвать полную очистку магазина клиента и новую полную синхронизацию.

Мне нужно смоделировать ошибку 410. Есть ли способ установить дату окончания токена синхронизации? Я попытался изменить данные управления доступом в календаре, но токен синхронизации не был аннулирован.

+1

Можете ли вы объяснить, почему это необходимо? Если вы хотите сделать это для тестирования, вам не нужно аннулировать фактический токен синхронизации. Сервер будет возвращать 410 при попытке инкрементной синхронизации, поэтому вы можете просто издеваться над этой частью и убедиться, что ваша программа правильно вернет 410 (выполните полную синхронизацию). –

+1

В моей ситуации я не могу создать mocks. У меня просто есть ссылка на веб-страницу, которая создает эти запросы в API календаря Google, и мне интересно, есть ли способ проверить, как он ведет себя в этом случае. В качестве побочной заметки мне удалось получить ошибку 410, вызвав API с помощью параметра updatedMin со значением, которое «слишком далеко в прошлом» в соответствии с ответом. URL-адрес выглядит так: https://www.googleapis.com/calendar/v3/calendars/{CALENDAR_ID}/events?updatedMin=2014-12-01T00%3A00%3A00.000Z&key={YOUR_API_KEY} –

ответ

2

Мне недавно нужно было протестировать сценарий ответа 410 в моем коде. В моем случае оказалось, что очень просто вызвать ответ 410.

Я храню токен синхронизации в базе данных, который выглядит примерно так: «CIiV7urvy84CEIiV7urvy84CGAU =».

Я смог изменить токен синхронизации, чтобы вызвать ответ 410. Я изменился на «1CIiV7urvy84CEIiV7urvy84CGAU =», добавив «1» в начале.