Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cookie数据好像没有本地持久化 #74

Open
XiaoAnXA opened this issue Jul 3, 2023 · 12 comments
Open

cookie数据好像没有本地持久化 #74

XiaoAnXA opened this issue Jul 3, 2023 · 12 comments

Comments

@XiaoAnXA
Copy link

XiaoAnXA commented Jul 3, 2023

如果持久化了,保存的文件路径是什么?感谢🙏

@SinyimZhi
Copy link
Collaborator

@XiaoAnXA 你说的本地持久化是指退出程序后下次打开仍然存在的这种吗?

@XiaoAnXA
Copy link
Author

XiaoAnXA commented Jul 4, 2023

@XiaoAnXA你说的本地持久化是指退出程序后下次打开仍然存在的这种吗?

@SinyimZhi 是的呢,比如我登录了一个网站,网站写入本地数据后,关闭软件,再次打开软件就不用登录了。还有我发现插件的设置cookie api延迟特别高(设置cookie方法是异步的,但是我等待方法执行完成后,获取cookie不一定能得到设置的cookie),不知道得为啥。还有就是不能添加一个清除缓存的方法,因为我看到删除cookie只能删除一个,特别是麻烦。

@SinyimZhi
Copy link
Collaborator

@XiaoAnXA 1.本地持久化的能力目前没有提供,之前没有接触过本地化的需求,不过以我个人的观点,如果你是一个客户端内置浏览器的话,cookie可以由客户端每次写入来实现,这样的话可能在安全性上会更有保障。2.cookie写入的延迟不是methodchannel异步实现带来的,是CefCookieManager本身的异步导致的,而插件setcookie的method并没有等待结果就直接返回了。3.事实上deletecookie函数本身就可以清除全部cookie,当domain和key均传“”时,所有cookie都会被清除,详情见cef源码

@XiaoAnXA
Copy link
Author

XiaoAnXA commented Jul 4, 2023

@SinyimZhi 好的,感谢

@suhe99
Copy link

suhe99 commented Jul 11, 2023

@SinyimZhi 你好,关于获取cookie,在flutter侧使用visitAllCookies()后,监听onAllCookiesVisited方法获取不到cookies呢。发现在webview_cookieVisitor.cc中先调用了getVisitedCookies,然后才调用Visit,导致读取不到cookie。请问在flutter侧应该如何获取cookie呢
@XiaoAnXA 可以根据CefSettings的cache_path设置本地的缓存路径,里面包含cookie。

@SinyimZhi
Copy link
Collaborator

@suhe99 我先验证下

@SinyimZhi
Copy link
Collaborator

@suhe99 我测试了下 onAllCookiesVisited是可以获取的到cookies的,代码的调用顺序没有问题。我发现之前cookie相关的example没有push上去,我明天抽时间push下。

@SinyimZhi
Copy link
Collaborator

SinyimZhi commented Jul 12, 2023

@suhe99 @hlwhl 我这里在windows重新测试了整个获取cookies的流程,由于windows是muti-thread模式的,visit函数只会在ui thread运行。确实会有调用顺序的问题。我将重新调整cookie管理的策略,这可能需要一定的时间。

@SinyimZhi
Copy link
Collaborator

@suhe99 @hlwhl 已修复,示例已上传

@suhe99
Copy link

suhe99 commented Jul 13, 2023

@SinyimZhi 你好,关于使用cookies.size()来区分visitAllCookies和visitUrlCookies可能不太合适,因为visitUrlCookies后的cookie大小也有可能大于1,是否增加一个枚举的成员变量来区分更好一些。

@SinyimZhi
Copy link
Collaborator

@suhe99 嗯嗯,可以。我最近在处理统一三端中间层的事,收尾Linux适配。要不你来添加一下,然后发pull request,我来review下?

@suhe99
Copy link

suhe99 commented Jul 17, 2023

@SinyimZhi 改了一版,#77 , 但是同时调用onUrlCookieVisitedCb和onAllCookieVisitedCb只会响应onUrlCookieVisitedCb,这两个回调可以同时调用吗,之前使用cookie的size区分应该也有问题

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants