現在、Google Volley を介してサーバーに簡単な POST リクエストを送信しようとしています。したがって、次のコード行を記述しました。
Map<String, String> params = new HashMap<String, String>();
params.put("regId", "skdjasjdaljdlksajskl");
JSONObject object = new JSONObject(params);
JsonObjectRequest request = new JsonObjectRequest(Method.POST,
"address_of_my_server/method", object,
successListener, errorListener);
queue.add(request);
しかし、エラー 500 が返されました。これは、パラメーター (regId) が不足していることを示しています。GET-Request でも同じことを試しましたが、同じ結果が得られました。
「address_of_my_server/method?regId=sadlasjdlasdklsj」のようなフォーマットされた URL で StringRequest を使用している場合にのみ、サーバーは 200 で応答します。
次のような StringRequest を使用すると、まったく同じ結果が得られます。
StringRequest request = new StringRequest(Method.POST,
"myurl", successListener,
errorListener){
@Override
protected Map<String, String> getParams()
throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put("regId", "skdjasjdaljdlksajskl");
return params;
}
};
Volley が私のパラメーターを無視するのはなぜですか?