我使用LoopJ AndroidAsyncHttp从/到我的服务器获取/发布数据。我知道,当我调用.get方法时,JSON响应存储在s字符串中,如下所示:
client = new AsyncHttpClient();
client.get("https://example.com/generateToken.php", new TextHttpResponseHandler() {
@Override
public void onFailure(int i, Header[] headers, String s, Throwable throwable) {
}
@Override
public void onSuccess(int i, Header[] headers, String s) {}
如果,然而,我发布到服务器,我如何得到我的服务器的响应?我在这里使用的模板张贴:http://loopj.com/android-async-http/doc/com/loopj/android/http/RequestParams.html
具体来说,我的代码看起来像这样:
params = new RequestParams();
params.put("first_name", firstName);
params.put("last_name", lastName);
client = new AsyncHttpClient();
client.post("xxx.com/createCustomer.php", params, responseHandler);
我的服务器接受这些输入并返回令牌。我如何检索这个令牌?我是否必须像以前一样在上面的。post代码之后立即调用。get方法?或者以某种方式自动重复?由于
这和你的Get请求是一样的。
post方法中的最后一个参数需要一个合适的ResponseHandler。
params = new RequestParams();
params.put("first_name", firstName);
params.put("last_name", lastName);
client = new AsyncHttpClient();
client.post("xxx.com/createCustomer.php", params, new TextHttpResponseHandler() {
@Override
public void onFailure(int i, Header[] headers, String s, Throwable throwable) {
}
@Override
public void onSuccess(int i, Header[] headers, String s) {}
);