我正在使用volley库我的volley请求在牛轧糖,奥利奥,棉花糖操作系统工作完美,但它不工作在Lollipop设备,它给出错误服务器错误,我处理了错误,我发现错误是400坏请求,我正在分享错误屏幕截图,也分享了我的代码,请帮助我,我的api也工作在邮递员...
我的请求代码是:
private void proceedToCheakOut(){ String tag_string_req = "req_check_out_data"; String uri = AppConfig.URL_CHECK_OUT + "?userid=" + preferences.getString(SharedPref.KEY_USER_ID, "") + "&hotelid=" + preferences.getString(SharedPref.KEY_HOTEL_ID,"") + "&band=" + preferences.getString(SharedPref.KEY_BAND_ID, "") + "&area=" + preferences.getString(SharedPref.KEY_SEARCH_AREA, "") + "&check_in=" + preferences.getString(SharedPref.KEY_CHECK_IN, "") + "&check_out=" + preferences.getString(SharedPref.KEY_CHECK_OUT, "") + "&room=" + preferences.getString(SharedPref.KEY_ROOM, "") + "&adult=" + preferences.getString(SharedPref.KEY_ADULT, "") + "&above=" + preferences.getString(SharedPref.KEY_ABOVE_8, "") + "&below=" + preferences.getString(SharedPref.KEY_BELOW_8, "") + "&spouse=" + preferences.getString(SharedPref.KEY_SPOUSE, "") + "&days=" + preferences.getString(SharedPref.KEY_NO_OF_DAYS, "") + "&roomid=" + preferences.getString(SharedPref.KEY_ROOM_ID, "") + "&" + SharedPref.KEY_DEFENCE_ID + "=" + preferences.getString(SharedPref.KEY_DEFENCE_ID, "") + "&spousePrice=" + spousePrice + "&adultPrice=" + adultPrice + "&abovePrice=" + abovePrice + "&belowPrice=" + belowPrice + "&price=" + price + "&tax=" + tax + "&grandTotal=" + grandTotal + "&userName=" + adult1Data + "&userRank=" + RankData + "&adultList=" + adultsArray + "&aboveList=" + childaboveArray + "&belowList=" + childbelowArray; Log.e("URI", uri); StringRequest strReq = new StringRequest(Request.Method.GET, uri, new Response.Listener() { @Override public void onResponse(String response) { try { JSONObject jObj = new JSONObject(response); boolean error = jObj.getBoolean("error"); // Check for error node in json if (!error) { Toast.makeText(CheckoutPersonalDetailActivity.this, "Booking Successful", Toast.LENGTH_SHORT).show(); Intent intent = new Intent(CheckoutPersonalDetailActivity.this, BookingDoneActivity.class); intent.putExtra("grandTotal", grandTotal); intent.putExtra(SharedPref.KEY_BOOKING_ID, jObj.getString("bookingid")); intent.putExtra(SharedPref.KEY_BOOKING_DATE, jObj.getString("bookingdate")); intent.putExtra(SharedPref.KEY_BOOKING_STATUS, jObj.getString("bookingstatus")); intent.putExtra("reminderhour", jObj.getString("reminderhour")); intent.putExtra("HotelImageString", hotelImgString); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); String title = "Booking Pending"; String description = "Booking is Pending, Your Booking Id is: "+ jObj.getString("bookingid"); sendNotification(title, description, jObj.getString("bookingid")); } else { Toast.makeText(CheckoutPersonalDetailActivity.this,jObj.getString("error_msg"), Toast.LENGTH_LONG).show(); } } catch (JSONException e) { e.printStackTrace(); } } }, new Response.ErrorListener() { @Override public void onErrorResponse(VolleyError error) { if (error == null || error.networkResponse == null) { return; } String body; //get status code here final String statusCode = String.valueOf(error.networkResponse.statusCode); try { body = new String(error.networkResponse.data,"UTF-8"); Toast.makeText(CheckoutPersonalDetailActivity.this, "Error: "+body, Toast.LENGTH_LONG).show(); } catch (UnsupportedEncodingException e) { // exception } } }); // Adding request to request queue AppController.getInstance().addToRequestQueue(strReq, tag_string_req); }
啊啊啊!最后我解决了我的问题,这段代码帮我...
uri = uri.replaceAll(" ", "%20");
我的api基url是: https://locodealapi.herokuapp.com/api/deals 在邮递员传球,跟随在头和它的工作很好。 OKHTTP日志拦截器 注意:相同的代码在本地nodejs服务器(仅限http)中运行良好
我正试着在邮递员上打API。API正在服务器上工作,但我没有收到任何数据。以下是视觉图像: 它是回应我与“没有数据”和400错误的要求。
我正在尝试使用Postman访问API,以使用基本身份验证获取响应,但当我提交数据时,它会给我带来可怕的400错误,这显然表明某些标头设置不正确。 以下是API信息: 作为回应,我应该得到一个JSON形式的加密令牌,而不是得到这个错误。 以下是邮差截图: 我错过了什么吗?
我正在开发一个Registraion API,它接受以下/request perameters的json输入 但是当我从android应用程序调用时,它给出了错误的响应,错误代码为,但在Postman上工作得很好。 我的API客户端 衷心感谢
在我的Laravel应用程序中,我需要定期使用Guzzle将数据发送到API。 API使用承载令牌进行身份验证,并请求和接受原始JSON。为了进行测试,我使用Postman访问了API,一切都工作得很好。
我有一个非常基本的webApi构建/运行(相当模板应用程序,仅此而已),以便遵循一个培训视频。GET和DELETE调用工作正常,PUT和POST给出400错误。诚然,对所有这些都很新,所以我正在寻找一些基本的方向,关于如何排除故障。相关的屏幕截图如下,我很高兴提供其他要求。提前谢了。