tra*_*nte 5 android android-async-http
关于LoopJ AndroidAsyncHttp 示例,我发出这样的get请求:
final TextView text = (TextView) findViewById(R.id.textView);
AsyncHttpClient client = new AsyncHttpClient();
client.get("http://example.com/mypage/", new AsyncHttpResponseHandler() {
@Override
public void onSuccess(String response) {
text.append(response);
}
});
Run Code Online (Sandbox Code Playgroud)
我还添加了cookies:
PersistentCookieStore myCookieStore = new PersistentCookieStore(this);
client.setCookieStore(myCookieStore);
BasicClientCookie newCookie = new BasicClientCookie("id", 17882);
myCookieStore.addCookie(newCookie);
Run Code Online (Sandbox Code Playgroud)
但在提出GET请求时,如何在请求对象中发送我的cookie?
关于文档客户端有这些方法签名:
void get(Context context, String url, AsyncHttpResponseHandler responseHandler)
void get(Context context, String url, Header[] headers, RequestParams params, AsyncHttpResponseHandler responseHandler)
void get(Context context, String url, RequestParams params, AsyncHttpResponseHandler responseHandler)
void get(String url, AsyncHttpResponseHandler responseHandler)
void get(String url, RequestParams params, AsyncHttpResponseHandler responseHandler)
Run Code Online (Sandbox Code Playgroud)
如果你能举一个在GET请求中发送持久性cookie的例子,我会很高兴.
由于您正在创建自己的PersistentCookieStore实例,因此只需使用myCookieStore您创建的实例即可。就像 @robotoaster 所说,在 get() 之前添加它。
或者
做这个
HttpContext httpContext = httpClient.getHttpContext();
CookieStore cookieStore = (CookieStore) httpContext.getAttribute(ClientContext.COOKIE_STORE);
Run Code Online (Sandbox Code Playgroud)
然后按照http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/org/apache/http/client/CookieStore.html中的说明进行操作。
来源:loopj for android 中的 Cookies (直接来自loopj)
| 归档时间: |
|
| 查看次数: |
5538 次 |
| 最近记录: |