Я получаю предварительно назначенный URL-адрес от Lambda, но не уверен, почему, когда я делаю запрос PUT на этот сгенерированный URL, мое изображение не загружается на S3.
Я точно следовал этим двум ответам , но это все еще не работает для меня
{ ссылка }
{ ссылка }
Может кто-нибудь указать, что я я делаю что-то не так?
public interface IUploadImages{
@PUT
Call<String> listRepos(@Url String url, @Body RequestBody image);
}
И мой призыв загрузить изображение:
//Already checked to make sure mImageUri is not null
File file = new File(StringUtils.getPath(this, mImageUri));
RequestBody requestFile = RequestBody.create(MediaType.parse("image/jpeg"), file);
RetrofitInterfaces.IUploadImages service = RetrofitClientInstance.getRetrofitInstance()
.create(RetrofitInterfaces.IUploadImages.class);
//Also checked to make sure mGeneraredUrl is also not null
Call<String> call = service.listRepos(mGeneratedUrl, requestFile);
call.enqueue(new Callback<String>() {
@Override
public void onResponse(Call<String> call, Response<String> response) {
if(response.isSuccessful()){
Log.d(TAG, "onResponse: Success?");
}
}
@Override
public void onFailure(Call<String> call, Throwable t) {
Log.d(TAG, "onFailure: Failed: " + t);
}
});
Я сделал ведро publi c. Вызов не прерывается, но в onResponse я получаю код ответа 403.