使用 Volley 我正在尝试发送 POST 标头并接收 StringRequest 但我收到 RuntimeException Caused by: java.net.MalformedURLException: no protocol,但我有一个协议。
我发送了正确的 cookie 和令牌
这是我的代码:
HttpClient httpClient = new DefaultHttpClient();
httpPost = new HttpPost("http://ipServer:portServer/xxx/products.json?place_id=1");
httpPost.addHeader("Content-type", "application/json");
httpPost.addHeader("cookie", cookieTmp);
httpPost.addHeader("X-CSRF-Token", tokenTmp);
StringRequest request = new StringRequest(Request.Method.GET, String.valueOf(httpPost),
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.i("VOLLEY", response);
startActivity(new Intent(getApplicationContext(),
MainActivity.class));
LoginActivity.this.finish();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
L.m("not response");
handleVolleyError(error);
我得到了这个例外:
E/Volley: [1070] NetworkDispatcher.run: Unhandled exception java.lang.RuntimeException: Bad URL org.apache.http.client.methods.HttpPost@c9461c0
java.lang.RuntimeException: Bad URL org.apache.http.client.methods.HttpPost@c9461c0
at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:151)
at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:114)
Caused by: java.net.MalformedURLException: no protocol: org.apache.http.client.methods.HttpPost@c9461c0
at java.net.URL.<init>(URL.java:589)
at java.net.URL.<init>(URL.java:486)
at java.net.URL.<init>(URL.java:435)
at com.android.volley.toolbox.HurlStack.performRequest(HurlStack.java:102)
at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:97)
at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:114)
我在 Postman 中执行的测试工作正常。关于可能导致这种情况的任何想法?