嗨,我是新來翻新和麪臨問題,以發佈json數據調用api的。我嘗試了很多解決方案,但沒有得到答案。如何通過原始json數據改造2.0
這是我的代碼
Map<String,String> data=new HashMap<>();
data.put("email",email);
data.put("feedback",feedback);
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), (new JSONObject(data)).toString());
Call<Feedback> call = apiInterface.feedbackResponse(accessToken,tokenType,client,expiry,uid,body);
call.enqueue(new Callback<Feedback>() {
@Override
public void onResponse(Call<Feedback> call, Response<Feedback> response) {
Log.e("Response",String.valueOf(response.code()));
Message message=response.body().getMessage();
String messageBody=message.toString();
String status=response.body().getStatus();
Toast.makeText(getApplicationContext(),status+" : "+messageBody,Toast.LENGTH_LONG).show();
}
@Override
public void onFailure(Call<Feedback> call, Throwable t) {
}
});
和我的界面是
@POST("feedbacks")
public Call<Feedback> feedbackResponse(@Header(ApiConstant.ACCESS_TOKEN) String accessToken, @Header(ApiConstant.TOKEN_TYPE) String tokenType,
@Header(ApiConstant.CLIENT) String client, @Header(ApiConstant.EXPIRY) String expiry,
@Header(ApiConstant.UID) String uid, @Body RequestBody feedback);
使用,因爲我用它爲每個API這樣的頭是不會放棄的問題。所以不要考慮標題是問題。
我的回答是
public class Feedback {
private Message message;
private String status;
private Data data;
public Message getMessage()
{
return message;
}
public void setMessage (Message message)
{
this.message = message;
}
public String getStatus()
{
return status;
}
public void setStatus (String status)
{
this.status = status;
}
public Data getData()
{
return data;
}
public void setData (Data data)
{
this.data = data;
}
@Override
public String toString()
{
return "ClassPojo [message = "+message+", status = "+status+", data = "+data+"]";
}
}
普萊舍建議我的正確途徑。
http://stackoverflow.com/q/21398598/7012517烏拉圭回合參考..! – Shobhit
老兄,我也跟着這個教程。但沒有得到答覆。它顯示了Nullpointer異常。 –