Kuwapp's Blog

Android と Flutter やってます

【Android】WebViewで取得したCookieをHttpClientで利用する。

ログインして使うWebサービスで、ログインしてからでないと使えないAPIをHttpClient経由で叩きたかったんだけど、HttpClientでログインするということがうまくいかない。
WebViewからならログインはできたので、そのCookieを使ってHttpClientでAPIを叩けばいいじゃんってことで実際に実装してみる。


以下ソース

//クッキーを取得
String cookie = CookieManager.getInstance().getCookie("Cookieが保存されているURL"); (1)

String URL = "APIのURL";

HttpGet http_get = new HttpGet(URL);

//取得したクッキーをセット
http_get.setHeader("Cookie", cookie); (2)

DefaultHttpClient default_http_client = new DefaultHttpClient();
HttpResponse http_response = default_http_client.execute(http_get);

if (http_response.getStatusLine().getStatusCode() != HttpStatus.SC_OK) {
	return null;
}

HttpEntity http_entity = http_response.getEntity();


(1)でクッキーを取得する。
(2)でクッキーをHttpGetにセットする。
以上

とりあえず、この実装で試してみる!

実際に、この方法が正しいとは限らないので、悪しからず。
何か良い方法があれば、教えて下さい
ブログの幅が狭いからソースがずれる・・・・