[英]How to upload file via Retrofit
我正在嘗試使用 retrofit 將文件從 android 設備上傳到服務器。
但每次,它在控制台中都no
結果。
文件Api.java :
public interface FilesApi {
@Multipart
@POST("file")
Call<String> storeFile(@Part MultipartBody.Part file);
}
在MainActivity.java中:
private void uploadFile(){
RequestBody requestFile= RequestBody.create(MediaType.parse("multipart/form-data"),file);
MultipartBody.Part body =
MultipartBody.Part.createFormData("file", file.getName(), requestFile);
//RequestBody requestBody = RequestBody.create(MediaType.parse("multipart/form-data"),file);
FilesApi api = RetrofitService.createService(FilesApi.class);
api.storeFile(body).enqueue(new Callback<String>() {
@Override
public void onResponse(Call<String> call, Response<String> response) {
Log.d(TAG, "onResponse: "+response.body());
}
@Override
public void onFailure(Call<String> call, Throwable t) {
Log.d(TAG, "onFailure: "+t);
}
});
}
PHP 代碼:
<?php
if(isset($_FILES['file']))
{
echo "YESS";
}
else
{
echo "no";
}
?>
Retrofit 參數以及服務器密鑰上的文件名應該相同。
請參閱此鏈接以獲取完整指南。 https://www.simplifiedcoding.net/retrofit-upload-file-tutorial/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.