1
我在POSTMAN中測試了我的REST服務,它工作正常。我應該得到這樣的東西:Android凌空。無法從工作的Rest API獲取JSON響應
{
"msg": "the user was successfully created"
...
}
但在我的android應用程序中調試無法找到響應。我錯過了什麼,或者我做錯了什麼?謝謝!
private void registerUser(final String firstName, final String lastName,
final String email, final String password) {
pDialog.setMessage("Registering ...");
showDialog();
try {
RequestQueue requestQueue = Volley.newRequestQueue(this);
JSONObject jsonBody = new JSONObject();
jsonBody.put("first_name", firstName);
jsonBody.put("last_name", lastName);
jsonBody.put("email", email);
jsonBody.put("password", password);
final String requestBody = jsonBody.toString();
StringRequest stringRequest = new StringRequest(Request.Method.POST, AppConfig.URL_REGISTER, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d(TAG, "Register Response: " + response);
hideDialog();
...
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e("VOLLEY", error.toString());
}
}) {
@Override
public String getBodyContentType() {
return "application/json";
}
@Override
public byte[] getBody() throws AuthFailureError {
try {
return requestBody == null ? null : requestBody.getBytes("utf-8");
} catch (UnsupportedEncodingException uee) {
VolleyLog.wtf("Unsupported Encoding while trying to get the bytes of %s using %s", requestBody, "utf-8");
return null;
}
}
@Override
protected Response<String> parseNetworkResponse(NetworkResponse response) {
String responseString = "";
if (response != null) {
responseString = String.valueOf(response.statusCode);
}
return Response.success(responseString, HttpHeaderParser.parseCacheHeaders(response));
}
};
requestQueue.add(stringRequest);
} catch (JSONException e) {
e.printStackTrace();
}
在調試時,塊
@Override
protected Response<String> parseNetworkResponse(NetworkResponse response) {
String responseString = "";
if (response != null) {
responseString = String.valueOf(response.statusCode);
}
return Response.success(responseString, HttpHeaderParser.parseCacheHeaders(response));
}
我沒有JSON響應。
有關如何做到這一點的任何鏈接? –
在響應變量中我唯一的信息是狀態碼。你可以在上面的img中看到它。 –
它應該很簡單。轉換整個響應而不是response.statusCode:類似於responseString = String.valueOf(response) – Gi1ber7