Android Retrofit RestAdapter 在断开连接时获得失败状态
Android Retrofit RestAdapter get failed status on disconnection
在我的应用程序中,我使用以下代码通过 Retrofit 将图像上传到 AWS:
private interface UploadFileToAwsInterface {
@Multipart
@POST("/")
SuccessResponse uploadFile(@Part("key") String key,
@Part("AWSAccessKeyId") String AWSAccessKeyId,
@Part("acl") String acl,
@Part("success_action_redirect") String success_action_redirect,
@Part("policy") String policy,
@Part("signature") String signature,
@Part("utf8") String utf8,
@Part("Content-Type") String contType,
@Part("file") TypedFile file);
}
public Boolean uploadFileToAws(AWSCredentials awsCredentials, File localFile, String mimeType) {
TypedFile file = new TypedFile(mimeType, localFile);
endPoint.setUrl(awsCredentials.getAction());
UploadFileToAwsInterface uploadFileInterface = restAdapter.create(UploadFileToAwsInterface.class);
SuccessResponse response = uploadFileInterface.uploadFile(
awsCredentials.getKey(),
awsCredentials.getAWSAccessKeyId(),
awsCredentials.getAcl(),
awsCredentials.getSuccess_action_redirect(),
awsCredentials.getPolicy(),
awsCredentials.getSignature(),
"true",
mimeType,
file);
图片上传正常。但是当我开始图片上传和网络断开时,我无法得到响应。在这种情况下我怎么会失败?
当你调用 uploadFileInterface.uploadFile():
时你可以捕获 RetrofitError
try {
SuccessResponse response = uploadFileInterface.uploadFile(
awsCredentials.getKey(),
awsCredentials.getAWSAccessKeyId(),
awsCredentials.getAcl(),
awsCredentials.getSuccess_action_redirect(),
awsCredentials.getPolicy(),
awsCredentials.getSignature(),
"true",
mimeType,
file);
} catch (RetrofitError error) {
//TODO Show exception here
}
在我的应用程序中,我使用以下代码通过 Retrofit 将图像上传到 AWS:
private interface UploadFileToAwsInterface {
@Multipart
@POST("/")
SuccessResponse uploadFile(@Part("key") String key,
@Part("AWSAccessKeyId") String AWSAccessKeyId,
@Part("acl") String acl,
@Part("success_action_redirect") String success_action_redirect,
@Part("policy") String policy,
@Part("signature") String signature,
@Part("utf8") String utf8,
@Part("Content-Type") String contType,
@Part("file") TypedFile file);
}
public Boolean uploadFileToAws(AWSCredentials awsCredentials, File localFile, String mimeType) {
TypedFile file = new TypedFile(mimeType, localFile);
endPoint.setUrl(awsCredentials.getAction());
UploadFileToAwsInterface uploadFileInterface = restAdapter.create(UploadFileToAwsInterface.class);
SuccessResponse response = uploadFileInterface.uploadFile(
awsCredentials.getKey(),
awsCredentials.getAWSAccessKeyId(),
awsCredentials.getAcl(),
awsCredentials.getSuccess_action_redirect(),
awsCredentials.getPolicy(),
awsCredentials.getSignature(),
"true",
mimeType,
file);
图片上传正常。但是当我开始图片上传和网络断开时,我无法得到响应。在这种情况下我怎么会失败?
当你调用 uploadFileInterface.uploadFile():
时你可以捕获 RetrofitErrortry {
SuccessResponse response = uploadFileInterface.uploadFile(
awsCredentials.getKey(),
awsCredentials.getAWSAccessKeyId(),
awsCredentials.getAcl(),
awsCredentials.getSuccess_action_redirect(),
awsCredentials.getPolicy(),
awsCredentials.getSignature(),
"true",
mimeType,
file);
} catch (RetrofitError error) {
//TODO Show exception here
}