我正在开发一个Android应用程序,它使用HTTP POST将登录数据发送到服务器。这一切都运行良好,直到HTTPClient和NameValuePair库在最近的更新中都被弃用。
我已经谷歌了很多新的方法,我知道我应该使用Http(s)URLConnection连接到服务器,但我不能让它正常工作,谷歌开发者网站不提供一个例子。我确实使用了this piece of code但它不起作用,抛出各种语法错误(缺少;等等)。
是否有人可以提供有效的HTTP请求示例? POST和JSON都很好,因为我可以轻松调整PHP代码以接收JSON对象。提前谢谢!
答案 0 :(得分:0)
使用截击。这是一个如何使用它的划痕。
StringRequest strReq = new StringRequest(Request.Method.POST,
<url>, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d(TAG, response.toString());
try {
//whatever format from response,do here...for eg:
JSONObject responseObj = new JSONObject(response);
//do parsing here after posting and response..
}
} catch (JSONException e) {
Toast.makeText(getApplicationContext(),
"Error: " + e.getMessage(),
Toast.LENGTH_LONG).show();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Log.e(TAG, "Error: " + error.getMessage());
Toast.makeText(getApplicationContext(),
error.getMessage(), Toast.LENGTH_SHORT).show();
}
}) {
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<String, String>();
params.put("name", editText.getText().toString());
Log.e(TAG, "Posting params: " + params.toString());
return params;
}
};