我发送cookie作为http get的一部分时遇到问题.首先,我进入webview中的登录页面,它给了我一个cookie.我检查过,cookie存储在CookieManager中.然后我使用BasicHttpRequest从同一个域获取特定的URL.我希望我从登录中获得的cookie可以附加到我的头文件中获取,但是在Wireshark中查看它并不存在.我用Google搜索并阅读了很多类似的问题,并确保:
我在webview中启动登录页面的代码如下所示:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// use cookies to remember a logged in status
CookieSyncManager.createInstance(this);
CookieSyncManager.getInstance().startSync();
//not sure if I need to do this
CookieManager cookie_manager = CookieManager.getInstance();
cookie_manager.setAcceptCookie(true);
webview = new WebView(this);
webview.getSettings().setJavaScriptEnabled(true);
webview.setWebViewClient(new HelloWebViewClient()); // if user clicks on a url we need to steal that click, also steal the back button
webview.loadUrl("http://"+my_server+"/api/v1/login");
setContentView(webview);
Run Code Online (Sandbox Code Playgroud)
然后我检查cookie的代码看起来像:
public static boolean CheckAuthorised() {
CookieSyncManager.getInstance().sync();
CookieManager cookie_manager = CookieManager.getInstance();
String cookie_string = cookie_manager.getCookie("http://"+my_server+"/api/v1/login");
System.out.println("lbp.me …
Run Code Online (Sandbox Code Playgroud)