由于所有旧的方法已被弃用,如HTTP POST,响应,HTTP客户端,字符串实体等,我想知道我怎么能发布JSON数据到2017年的Android服务器。我的应用程序应该注册或发送JSON使用POST方法将数据(如电子邮件,联系电话和密码)发送到服务器,然后服务器将提供JSON响应,例如状态,消息和名为data的数组。数据是只有2个对象的数组(即令牌和电子邮件)。请帮忙。如何将JSON数据发送到android中的服务器?
-3
A
回答
0
尝试这样
private void registerUser(){
final String username = editTextUsername.getText().toString().trim();
final String password = editTextPassword.getText().toString().trim();
final String email = editTextEmail.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, REGISTER_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(MainActivity.this,response,Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.this,error.toString(),Toast.LENGTH_LONG).show();
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put(KEY_USERNAME,username);
params.put(KEY_PASSWORD,password);
params.put(KEY_EMAIL, email);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
0
使用凌空做下面的链接查看的例子。 volley example
创建一个RequestQueue类的对象。
RequestQueue queue = Volley.newRequestQueue(this);
与响应和错误监听创建StringRequest。
StringRequest sr = new StringRequest(Request.Method.POST,"http://api.someservice.com/post/comment", new Response.Listener<String>() {
@Override
public void onResponse(String response) {
mPostCommentResponse.requestCompleted();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
mPostCommentResponse.requestEndedWithError(error);
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put("user",userAccount.getUsername());
params.put("pass",userAccount.getPassword());
params.put("comment", Uri.encode(comment));
params.put("comment_post_ID",String.valueOf(postId));
params.put("blogId",String.valueOf(blogId));
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");
return params;
}
};
- 添加您的要求转化到请求队列。
queue.add(jsObjRequest);
1
我想你需要尝试循环J库发送JSON数据
you can try this link 并且也很容易已了解 You can try another link
try{
AsyncHttpClient client = new AsyncHttpClient();
JSONObject obj = new JSONObject();
obj.put("email",email);
obj.put("contact_number",contact_number);
obj.put("password",password);
entity = new StringEntity(obj.toString());
client.post(getApplicationContext(), "Your_URL", entity, "application/json", new TextHttpResponseHandler() {
@Override
public void onFailure(int statusCode, Header[] headers, String responseString, Throwable throwable) {
Log.d("LoginActivity","Failed");
Log.d("LoginActivity","body " + responseString);
}
@Override
public void onSuccess(int statusCode, Header[] headers, String responseString) {
Log.d("LoginActivity","data " + responseString);
try {
JSONObject respObj = new JSONObject(responseString);
String data = respObj.toString();
Log.d("LoginActivity","Data : " + data);
} catch (JSONException e) {
e.printStackTrace();
}
}
});
}catch (Exception ex){
Log.d("LoginActivity","Getting Exception "+ex.toString());
}
相关问题
- 1. 使用JSON数据将数据从Android发送到服务器
- 2. Android。如何将数据发送到开发人员服务器
- 3. 使用json将多选数据从服务器发送到android?
- 4. 如何使用改进将json数据发送到服务器?
- 5. 如何将组件数据作为json发送到服务器?
- 6. 发送JSON数据到服务器
- 7. 发送json数据到Laravel服务器
- 8. Android将数据发送回服务器
- 9. 如何将数据从Android发送到Web服务器
- 10. Android:发送数据到服务器
- 11. Android - 发送JSON请求到服务器
- 12. 将数据发送到Web服务器
- 13. 将数据发送到nodejs服务器
- 14. 将数据发送到Web服务器
- 15. 将数据发送到PHP服务器
- 16. 如何将数据发送到PHP服务器并接收数据到Android
- 17. 发送json数据从android到php linux服务器
- 18. Android - 如何将数据发送到服务的onDestroy方法
- 19. 如何将Android中的数据以JSON格式发布到服务器?
- 20. 将数据从Android发送到服务器的最快方法?
- 21. 的Android将数据发送到PHP服务器
- 22. Android HttpPost。将数据发送到PHP服务器上的表单
- 23. 发送JSON数据到PHP Web服务
- 24. 如何使用StringEntity将JSONarray发送到Android中的服务器?
- 25. 如何将联系人发送到Android中的服务器
- 26. 如何将json数据响应从Servlet发送到特定的Url(服务器)?
- 27. 如何将数组数据类型发送到服务器?
- 28. 如何将数据发送到跨服务器的php文件?
- 29. 将JSON从HTTP Post发送到Android上的Algolia服务器
- 30. Android将图像发送到服务器
使用改装,排或HttpURLConnection的 – Anil
你试过什么了? – TriskalJM
可以提供代码,这将是非常有益的。我尝试过抽球,但我不知道如何发送JSON,而我只能得到正确的响应,但无法注册。 – kloss91