• WebView cookie 管理


    Android应用程序中经常会加载一个WebView页,如果需要客户端向WebView传递信息,比如Cookie,也是可以的。

    需要应用程序先将Cookie注入进去,打开该网页时,WebView会将加载的url通过http请求传输到服务器。同时,在这次请求中,会将Cookie信息通过http header传递过去。

        流程如下:

        1、客户端通过以下代码设置cookie

    public static void synCookies(Context context, String url) {  
    	    CookieSyncManager.createInstance(context);  
    	    CookieManager cookieManager = CookieManager.getInstance();  

    cookieManager.setAcceptCookie(true);
                cookieManager.removeSessionCookie();// 移除
                cookieManager.setCookie(url, "uid=1243432");        
      CookieSyncManager.getInstance().sync();  
    }

       2、CookieManager会将这个Cookie存入该应用程序/data/data/databases/目录下的webviewCookiesChromium.db数据库的cookies表中

       3、打开网页,WebView从数据库中读取该cookie值,放到http请求的头部,传递到服务器

       4、客户端可以在注销登录时清除该应用程序用到的所有cookies

    private void removeCookie(Context context) {
    		CookieSyncManager.createInstance(context);  
    		CookieManager cookieManager = CookieManager.getInstance(); 
    		cookieManager.removeAllCookie();
    		CookieSyncManager.getInstance().sync();  
    	}
  • 相关阅读:
    linux 读写文件 open write lseek的API和应用
    gdb 常用命令
    makefile
    c/c++ 动态库与静态库的制作和使用
    linux 常用命令
    c/c++ 网络编程 陈硕老师视频理解之ttcp
    emacs 高亮
    初识HMTL标签
    Java集合基于JDK1.8的ArrayList源码分析
    Java提高篇——equals()与hashCode()方法详解
  • 原文地址:https://www.cnblogs.com/lianghui66/p/6003797.html
Copyright © 2020-2023  润新知