这是 Retrofit2 的界面:
public interface OAuthServerIntf {
....
@POST("upload/drive/v3/files?uploadType=multipart")
@Multipart
Call<JsonObject> uploadFileMutil(
@Header("Authorization") String authToken,
@Part MultipartBody.Part metaPart,
@Part MultipartBody.Part dataPart);
}
这就是我调用的地方:
public void onActivityResult(...) {
....
MultipartBody.Part filePart =
MultipartBody.Part.createFormData("image", file.getName(), fileBody);
Call<JsonObject> request =
server.uploadFileMutil(oauthToken.getAccessToken(),filePart);
request.enqueue(new Callback<JsonObject>(){...});
}
oauthToken.getAccessToken()-accesstoken
MultipartBody.Part filePart - 我要发送到服务器的文件
一般来说,metaPart和dataPart这2个参数怎么查询呢?
看到token需要带上Bearer类型,怎么办???
最佳答案
不确定您是否找到了答案。仍然在下面显示一些代码,希望这对某人有所帮助。
val contentType = MediaType.parse("application/json; charset=UTF-8");
val content = "{\"name\": \"" + srcFile.name + "\"}"
val metaPart = MultipartBody.Part.create(RequestBody.create(contentType, content))
val dataPart = MultipartBody.Part.create(RequestBody.create(MediaType.parse("text/plain"), srcFile))
val headers = HashMap<String, String>()
headers.put("Authorization", "Bearer " + accessToken)
mDriveApi.uploadFile(headers, metaPart, dataPart)
关于android - 上传 Google Drive API Retrofit 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43596834/