Я испытываю API-интерфейс с одним диском для загрузки папки в папку с одним диском.
Использование обычной загрузки работает нормально.
Я также тестирую возобновляемую загрузку, которая используется для больших файлов. Но тут я получаю странный ответ.
Я перехожу по этой ссылке, чтобы узнать, как это сделать: https://docs.microsoft.com/en-us/onedrive/developer/rest-api/api/driveitem_createuploadsession.
Сначала я получаю сеанс загрузки, используя "https://graph.microsoft.com/v1.0/me/drive/items/xxxxxxxxxx:/filename.txt:/createUploadSession".
Это возвращает мне значение uploadUrl, что-то вроде "https://api.onedrive.com/rup/xxxxxxxxxxxxx"
Затем я выполняю запрос PUT на этот URL с правильными заголовками.
Полученный ответ - 400 (неверный запрос) со следующим текстом (включая HTML):
<h2>Our services aren't available right now</h2><p>We're working to restore all services as soon as possible. Please check back soon.</p>Ref A: 235A863C95DC45BE98688D905A7DB3C1 Ref B: BUH01EDGE0107 Ref C: 2018-08-28T18:56:52Z
Я получаю это уже 3 дня и, похоже, не могу получить какую-либо поддержку от Microsoft. По данным этого сайта, все работает: https://portal.office.com/servicestatus
Кто-нибудь знает, почему я получаю эту ошибку?
Я нашел причину ошибки.
Я получил ошибку, потому что я указал токен аутентификации в заголовке.
Для небольших загрузок файлов это требуется, но для больших загрузок файлов это не требуется.
Я использовал один и тот же код для запросов PUT, POST и GET, где я передаю только URL-адрес и HTTP-содержимое и всегда добавляю заголовки аутентификации. Но для загрузки больших файлов это не требуется.
Но все равно очень странный ответ об ошибке для добавления ненужных заголовков.