это первый раз, когда я пишу на StackOverflow. Мой вопрос заключается в следующем.
Я пытаюсь написать API OneDrive C++ на основе проекта cpprest sdk CasaBlanca:
https://casablanca.codeplex.com/
В частности, в настоящее время я реализую операции чтения файлов OneDrive.
На самом деле, мне удалось скачать целый файл со следующим кодом:
http_client api(U("https://apis.live.net/v5.0/"), m_http_config);
api.request(methods::GET, file_id +L"/content" ).then([=](http_response response){
return response.body();
}).then([=]( istream is){
streambuf<uint8_t> rwbuf = file_buffer<uint8_t>::open(L"test.txt").get();
is.read_to_end(rwbuf).get();
rwbuf.close();
}).wait()
Этот код в основном загружает весь файл на компьютер (file_id — это идентификатор файла, который я пытаюсь загрузить). Конечно, я могу извлечь входной поток из файла и использовать его для чтения файла.
Однако это может вызвать проблемы, если файл большой. Что я имел в виду, так это загрузить часть файла, пока вызывающий абонент читает его (и кэшировать эту часть, если он вернется).
Тогда мой вопрос будет таким:
Возможно ли, используя OneDrive REST + cpprest, загрузить часть файла, хранящегося в OneDrive. Я обнаружил, что загрузка файлов фрагментами кажется невозможной (загрузка по частям (возобновляемая загрузка) для OneDrive?). Это верно и для загрузки?
Заранее благодарим вас за ваше время.
С наилучшими пожеланиями,
Джузеппе