Java 500,改装2中出现内部服务器错误
我有500个内部服务器错误,每次当我试图通过改装发送POST请求时。当我发送GET请求时,它将正确发送。我相信服务器端的一切都可以。我的代码怎么了 这是我的请求方法Java 500,改装2中出现内部服务器错误,java,android,server,http-post,retrofit2,Java,Android,Server,Http Post,Retrofit2,我有500个内部服务器错误,每次当我试图通过改装发送POST请求时。当我发送GET请求时,它将正确发送。我相信服务器端的一切都可以。我的代码怎么了 这是我的请求方法 @POST("/listing/createListing") Call<ResponseBody> pushData(@Body RequestBody image); @POST(“/listing/createListing”) 调用pushData(@Body RequestBody image); 实现后的
@POST("/listing/createListing")
Call<ResponseBody> pushData(@Body RequestBody image);
@POST(“/listing/createListing”)
调用pushData(@Body RequestBody image);
实现后的modelTask是我的模型类对象,firebaseToken是firebase身份验证令牌。在我的模型类中,我将图像保存为文件列表
OkHttpClient client = new OkHttpClient.Builder().addInterceptor(new
Interceptor() {
@Override
public okhttp3.Response intercept(Chain chain) throws
IOException {
Request newRequest = chain.request().newBuilder()
.addHeader("Authorization", "Bearer " +
firebaseToken)
.build();
return chain.proceed(newRequest);
}
}).build();
Retrofit retrofit = new Retrofit.Builder()
.client(client)
.baseUrl("https://something.herokuapp.com")
.addConverterFactory(GsonConverterFactory.create())
.build();
ApiEndPoint apiService = retrofit.create(ApiEndPoint.class);
MultipartBody.Builder builder = new MultipartBody.Builder();
builder.setType(MultipartBody.FORM);
builder.addFormDataPart("title", modelTask.getTitle());
builder.addFormDataPart("description", modelTask.getDescription());
builder.addFormDataPart("user_name", "Josim Uddin");
builder.addFormDataPart("user_id", "2133323");
builder.addFormDataPart("price", "30.0");
builder.addFormDataPart("category_name", "Cleaning");
builder.addFormDataPart("category_id", "123");
builder.addFormDataPart("preferred_date",
modelTask.getPreferred_date());
builder.addFormDataPart("preferred_time",
modelTask.getPreferred_time());
builder.addFormDataPart("hasPet", modelTask.getHasPet());
builder.addFormDataPart("budget",
String.valueOf(modelTask.getBudget()));
builder.addFormDataPart("address", modelTask.getAddress());
builder.addFormDataPart("longitude",
String.valueOf(modelTask.getLongitude()));
builder.addFormDataPart("latitude",
String.valueOf(modelTask.getLatitude()));
builder.addFormDataPart("equipment", modelTask.getEquipment());
for (int i = 0; i < modelTask.getImages().size(); i++) {
builder.addFormDataPart("image[]",
modelTask.getImages().get(i).getName(),
RequestBody.create(MediaType.parse("multipart/form-data"),
modelTask.getImages().get(i)));
}
MultipartBody requestBody = builder.build();
Call<ResponseBody> call = apiService.pushData(requestBody);
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call,
Response<ResponseBody> response) {
Log.d(TAG, "onResponse:" + response.code()+",
"+response.message());
if (response.isSuccessful()) {
try {
Log.d(TAG, "post submitted code:" +
response.code()+"body:"+response.body().string());
} catch (Exception e) {
e.printStackTrace();
}
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
Log.e(TAG, "Unable to submit post to API::
"+t.getMessage());
}
});
OkHttpClient客户端=新建OkHttpClient.Builder().addInterceptor(新建)
拦截器(){
@凌驾
公共okhttp3.响应截获(链)抛出
IOException{
Request newRequest=chain.Request().newBuilder()
.addHeader(“授权”、“持有人”+
firebaseToken)
.build();
返回链。继续(新请求);
}
}).build();
改装改装=新改装.Builder()
.客户(客户)
.baseUrl(“https://something.herokuapp.com")
.addConverterFactory(GsonConverterFactory.create())
.build();
apidentpoint-apiService=reformation.create(apidentpoint.class);
MultipartBody.Builder=新的MultipartBody.Builder();
setType(MultipartBody.FORM);
builder.addFormDataPart(“title”,modelstask.getTitle());
builder.addFormDataPart(“description”,modelstask.getDescription());
addFormDataPart(“用户名”、“Josim Uddin”);
builder.addFormDataPart(“用户id”,“2133323”);
建造商。addFormDataPart(“价格”,“30.0”);
建造商。addFormDataPart(“类别名称”、“清洁”);
建造商:addFormDataPart(“类别id”、“123”);
builder.addFormDataPart(“首选日期”,
modelstask.getPreferred_date());
builder.addFormDataPart(“首选时间”,
modelstask.getPreferred_time());
addFormDataPart(“hasPet”,modelTask.getHasPet());
builder.addFormDataPart(“预算”,
valueOf(modelstask.getBudget());
builder.addFormDataPart(“地址”,modelstask.getAddress());
builder.addFormDataPart(“经度”,
valueOf(modelstask.getLongitude());
builder.addFormDataPart(“纬度”,
valueOf(modelstask.getLatitude());
builder.addFormDataPart(“设备”,modelTask.getEquipment());
对于(int i=0;i
邮差测试成功。试试这个
@POST("listing/createListing")
Call<ResponseBody> pushData(@Body RequestBody image);
@POST(“listing/createListing”)
调用pushData(@Body RequestBody image);
从链接中删除“/”并将其添加到基本Url的末尾