将值传递给Web服务 - Android

时间:2016-01-19 08:01:14

标签: java android web-services http-post

我正在尝试在我们的应用中传递注册详细信息 服务结构是

   FirstName: '',
        MiddleName: '',
        LastName: '',
        EmailAddress: '',
        ReceiveUpdates: false,
        Login: {
            UserName: '',
            Password: '',
        }

我的注册按钮后面的代码是

     AsyncHttpClient client = new AsyncHttpClient();
               RequestParams params = new RequestParams();
                params.put("FirstName", "ALi");
                params.put("MiddleName", "Farhan");
                params.put("LastName", "Ali");
                params.put("EmailAddress", "far67890@gmail.com");
                params.put("ReceiveUpdates", "false");
                params.put("UserName", "farhan6");
                params.put("Password", "cricket");

                        client.post("http://urb-app.com/Buyer/Register", params, new AsyncHttpResponseHandler() {

                            @Override
                            public void onSuccess(String s) {
                                super.onSuccess(s);
                                Toast.makeText(getApplicationContext(), "Success :" + s, Toast.LENGTH_LONG).show();
                                //  tv.append("service_ReloadSqlDB" + "    " + s);
                            }

                            @Override
                            public void onFailure(Throwable throwable) {
                                super.onFailure(throwable);
                                Toast.makeText(getApplicationContext(), "Server Response for onFailure ", Toast.LENGTH_LONG).show();
                            }
                        });

我正在使用AsyncHttpClient发布请求,问题是如何在登录正文中传递用户名和密码

 Login: {
            UserName: '',
            Password: '',
        },

1 个答案:

答案 0 :(得分:0)

尝试在HashMap中创建请求参数。您可以制作HashMap<String, Object> params = new HashMap<>();之类的内容 在里面,您可以将另一个HashMap与您的登录详细信息放在一起。

HashMap<String, String> login = new HashMap<>();
login.put("username", "farhan6");
login.put("password", "cricket");

现在你可以把它放在像

这样的第一个参数中
params.put("Login",login);

从这里你可以创建一个像

这样的RequestParams对象
RequestParams params = new RequestParams(paramMap);

您可以看到更多帮助here