Я просмотрел много ссылок (включая onedrive api doc), но я не могу загрузить файл в onedrive, используя запрос okhttp.
Ниже приведен код, который я пробовал:
try {
boolean status;
String url = String.format("onedrive.live.com/v1.0/drive/root:/"+step.file_name+":/content");
//exceptions are not coming if i mention https:// in the url. but no output is coming
Request request = new Request.Builder()
.url(url)
.put(RequestBody.create(MediaType.parse(step.getContent_type()),step.getFile_data()))
.addHeader("Authorization", String.format("Bearer %s",step.getAccess_token()))
.build();
OkHttpClient okHttpClient = new OkHttpClient();
Response response = okHttpClient.newCall(request).execute();
status = response.code()==200 ? true : false;
} catch (Exception e) {
e.printStackTrace();
return StepStatus.FAILURE;
}
При попытке почтальона (сопоставление PUT) с URL-адресом «onedrive.live.com/v1.0/drive/root:/abc.txt:/content» он перенаправляет на диск, но говорит, что файл может быть удален .
Но, когда я пытаюсь сгенерировать URL с именем файла и нажать на диск, он показывает успех, но файл не сохраняется / загружается на диск.
Как загрузить файл в onedrive из запроса okhttp?