0
私は、ボレー認証を使用してライブサーバーに接続しようとしています。ローカルサーバーに接続するとうまくいきましたが、ライブサーバーに接続する際には以下の例外が発生します。アンドロイドのVolleyを使用してライブサーバーに接続中に例外が発生しました
BasicNetwork.performRequest: "URL"
のための予期しない応答コード500とサーバ側のエラーがメディアタイプ「アプリケーション/ JSONをパース
以下のエラーです。 charset = utf-8、application/x-www-form-urlencoded; charset = UTF-8 '期待された区切り文字'; '代わりに「」これは、ここでは、サーバー側で
を取得中にエラーが私のコードは、ジャージーは、Javaで使用されているサーバー側で
public void userLogin(){
showDialog(DIALOG_LOADING);
final String json = new Gson().toJson(arr);
StringRequest jsonObjReq = new StringRequest(Request.Method.POST,
Const.URL_LOGIN,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
System.out.println("LOGIN Response :" + response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
NetworkResponse networkResponse = error.networkResponse;
System.out.println("NetworkResponse "+ networkResponse);
if (networkResponse!= null && networkResponse.statusCode == 401) {
Login.this.runOnUiThread(new Runnable() {
public void run() {
invalidemail.setVisibility(View.GONE);
inactiveaccount.setVisibility(View.VISIBLE);
}
});
}
error.printStackTrace();
removeDialog(DIALOG_LOADING);
toast_tv.setText("There is no Internet connection. Try again...!");
toast.show();
}
}){
@Override
public byte[] getBody() {
try {
return json == null ? null : json.getBytes("utf-8");
} catch (UnsupportedEncodingException uee) {
VolleyLog.wtf("Unsupported Encoding while trying to get the bytes of %s using %s",
json, "utf-8");
return null;
}
}
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
HashMap<String, String> headers = new HashMap<String, String>();
String credentials = String.format("%s:%s",Const.auth_username,Const.auth_password);
String auth = "Basic "
+ Base64.encodeToString(credentials.getBytes(),
Base64.NO_WRAP);
headers.put("Authorization", auth);
headers.put("Content-Type", "application/json; charset=utf-8");
return headers ;
}
};
jsonObjReq.setRetryPolicy(new DefaultRetryPolicy(20 * DefaultRetryPolicy.DEFAULT_TIMEOUT_MS, 0, 0));
Volley.newRequestQueue(this).add(jsonObjReq);
}
です。
おそらくサーバー側でエラーが発生します。 – SripadRaj
500は内部サーバーエラーのエラーステータスです。 – toantran
しかし、それはiosで働いていて、同じサーバーが両方のアンドロイドとiosに使用されています。 @SripadRaj –