2017-02-03 2 views
0

Я хочу создать проект с помощью Microsoft Cognitive Services, работающего с API Onedrive.API Onedrive читает файлы по данной ссылке

Сценарий: пользователь предоставит мне ссылку Onedrive, и мой API пойдет по файлам в этой папке.

Возможно ли это?

Если да, где я могу найти дополнительную документацию об этом?

ответ

0

Вы должны использовать API shares, используя кодированную версию OneDrive Link.

GET ../v1.0/shares/{sharingTokenOrUrl}

Где sharingTokenOrUrl в вашем случае является URL кодируются следующим образом:

  1. Во-первых, использование base64 кодирования URL.
  2. Преобразование в формате base64 результат в формате без ведущего base64url путем удаления = символов с конца значения, заменяя/с _ и + с -.)
  3. Append u! для начала строки.

В качестве примера для кодирования URL в C#:

string sharingUrl = "https://onedrive.live.com/redir?resid=1231244193912!12&authKey=1201919!12921!1"; 
string base64Value = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(sharingUrl)); 
string encodedUrl = "u!" + base64Value.TrimEnd('=').Replace('/','_').Replace('+','-'); 

Заканчивать this documentation для полного описания shares конечной точки.

+0

Знаете ли вы, что такое же кодировка и значение base64 для javascript –

+0

Посмотрите, подходит ли вам ответ на этот ответ (http://stackoverflow.com/questions/5641303/base64url-in-java) – Brad

Смежные вопросы