Srusti Thakkar Ответов: 1

Разработка настольного клиента onedrive с использованием языка C#


Здравствуйте, я хочу разработать клиент, похожий на настольный клиент OneDrive.

Я создал веб-приложение. В этом случае я использовал OneDrive Rest API для выполнения основных операций. Теперь я хочу разработать настольный клиент и выполнить то же самое действие, что и настольный клиент OneDrive.

Как я могу начать развивать клиента? Какова первоначальная задача при первом связывании локальной папки с OneDrive и как синхронизировать данные на регулярной основе?

Спасибо

Что я уже пробовал:

Ссылка на образец элементов OneDrive / Dev

1 Ответов

Рейтинг:
1

Afzaal Ahmad Zeeshan

Поскольку у вас уже есть веб-приложение, почему бы вам просто не уйти и не создать API в своем собственном приложении; если бы мне пришлось это сделать, я бы определенно сделал это так. Это имело бы различные преимущества, вам не нужно будет раскрывать свои ключи API для приложения всем, кто использует ваше приложение Все ваши ключи будут в безопасности на вашем веб-сервере, и люди будут пользоваться вашими услугами.

Кроме того, это было бы лучше, потому что вы просто расширили бы свое веб-приложение до другой степени и позволили бы клиентам потребляйте свое веб-приложение. OneDrive Rest API можно легко использовать с настольными приложениями .Чистый фреймворк HttpClient проблема в том, что вы будете переписывать один и тот же код снова и снова.


Srusti Thakkar

Как вы уже упоминали, я должен создать свой собственный WEBAPI, я создал его, но теперь я хочу создать так же, как OneDrive Desktop Client и синхронизировать данные в двух направлениях. Как это может быть возможно?

Afzaal Ahmad Zeeshan

Для этого вам нужно будет написать клиент, который проверяет данные онлайн и оффлайн, в обоих направлениях.

Что именно у вас есть на данный момент? Теоретически мы ничем не можем вам помочь.

Srusti Thakkar

Я создал одну службу Windows, в которой я использую класс FileSystemWatcher и выполняю действия по созданию, переименованию или удалению. Всякий раз, когда эти действия выполняются в локальном каталоге, я вызываю REST API и синхронизирую локальные данные в OneDrive, но всякий раз, когда пользователь вносит изменения в OneDrive, используя Дельта-запрос, перечисляю все изменения и пытаюсь синхронизировать с локальным каталогом. Он работает нормально, но всякий раз, когда Дельта-запрос пытается синхронизировать данные, событие FileSystemWatcher выполняет и пытается синхронизировать локальные изменения с OneDrive. Как я могу использовать логику синхронизации для поддержания изменений?

Afzaal Ahmad Zeeshan

Вы можете отключить эту службу, когда ваше приложение загружает обновления из OneDrive, а затем перезапустить ее.

Для получения ответа, пожалуйста, взгляните на этот ответ Сергея.