【发布时间】:2015-08-06 04:38:16
【问题描述】:
我试图通过 Volley 发出 POST 请求。它在我的本地主机中工作得很好,但是当我将它移到网络服务器时,响应是空的。
Java 代码
RequestQueue queue = Volley.newRequestQueue(this);
StringRequest sr = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
pd.dismiss();
Log.d("Response: ", response.toString());
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.d("Error: ", error + "");
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("name", name);
params.put("phone", phone);
params.put("email", email);
Log.d("getParams", params.toString());
return params;
}
@Override
public Map<String, String> getHeaders() throws AuthFailureError {
Map<String, String> params = new HashMap<String, String>();
params.put("Content-Type", "application/x-www-form-urlencoded");
Log.d("getHeaders", params.toString());
return params;
}
};
queue.add(sr);
PHP 代码
$name = $this->input->post('name');
$phone = $this->input->post('phone');
$email = $this->input->post('email');
echo "Name: ".$name." Phone: ".$phone." Email:".$email;
【问题讨论】:
-
空响应是什么意思?
-
我没有得到我在 php 部分中发布的价值。 $name,$phone,$email 为空
-
只有这部分
$name,$phone,$email还是整个字符串"Name: ".$name." Phone: ".$phone." Email:".$email? -
我得到的只有变量是空的:
D/Response:﹕ Name: Phone: Email: -
你可以试试 print_r($_POST);
标签: android http-post android-volley