URL의 예 = http://webapi.example.com/api/order?data= 히트 발리에서 작업 브라우저 URL에서 작동하지 않는 {... 목록 [{...}를, {...}]} 위의 코드 I에 대한API URL은
GsonRequest request = new GsonRequest<OrderResponse>("URL example", null,
OrderResponse.class, null, new Response.Listener<OrderResponse>() {
@Override
public void onResponse(OrderResponse response) {
if (response.isSuccess()) {
//sendNotification();
} else {
Toast.makeText(DeliveryManagementActivity.this, "Error in Server", Toast.LENGTH_SHORT).show();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.e("Error: " + error.getMessage());
}
});
400 오류가 발생했습니다.
GsonRequest request = new GsonRequest<OrderResponse>(UrlConstants.SEND_ORDERS_URL, getParams(),
OrderResponse.class, header, new Response.Listener<OrderResponse>() {
@Override
public void onResponse(OrderResponse response) {
if (response.isSuccess()) {
sendNotification();
} else {
Toast.makeText(DeliveryManagementActivity.this, "Error in Server", Toast.LENGTH_SHORT).show();
}
hideLoader();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
error.printStackTrace();
VolleyLog.e("Error: " + error.getMessage());
Toast.makeText(DeliveryManagementActivity.this, "Error " + error.getMessage(), Toast.LENGTH_SHORT).show();
hideLoader();
}
});
public Map<String, String> getHeaders() throws AuthFailureError {
HashMap<String, String> headers = new HashMap<String, String>();
headers.put("Content-Type", "application/json");
return headers;
}
private Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("orderData", requestData.getOrderRequest(requestData));
return params;
}
위의 경우 서버에서 잘못된 응답이 항상 잘못 표시됩니다. 첫 번째 요청 메서드에서 요청을 복사하고 브라우저 URL을 사용하여 API를 누르십시오. 잘 돌아갔다.
편집 됨 :
초 방법으로 변경 한 후에, 상기 요청은 다음과 같은 것이다.
url = www.url.com/addOrder.php?
매개 변수 = { "주문 데이터": "{배달 시간 \": \ "2017-12-10 01:13:00 \", \ "주문 \ \ "1 \", \ "2 \", \ "offer_id \": \ "1 \", \ "type \": \ "1 \"}], \ "userID \" \ "7 \"\ "userLocation \"\ "17 \"} "}
orderData 또한 JSON 안에 파싱 = 누락
. 그것이 문제입니다. 문제의 맨 위에있는 URL이 실제이며 작동 중입니다.
예. 그것은 주문 데이터입니다 –
당신이 오류 메시지를 게시 할 수 있다면, 문제를 디버깅하는 것이 도움이 될 것입니다. 또 하나의 질문은 두 코드 스 니펫 모두 400을 던집니까? – Deepak
발리에서 오류가 없습니다. API의 오류 응답 –