在我的Cordova应用程序中,我尝试使用inappbrowser打开一个链接。 此链接指向访问该页面之前需要进行Google身份验证的域。如果我再次尝试打开链接,域名不需要再次进行身份验证,会话就可以了,这很有效。
我的问题发生在我杀死应用程序时。如果我想再次访问该链接,Google会要求我再次进行身份验证。而且我不想这样做。
有没有办法保存inappbrowser插件的cookie?
先谢谢!
答案 0 :(得分:2)
这只是我想分享的想法(从未测试过):
var ref = window.open(url, target, options);
clearcache :设置为是,以便在打开新窗口之前清除浏览器的Cookie缓存< / em>的
clearsessioncache :设置为yes以在打开新窗口之前清除会话Cookie缓存
我认为值得尝试使用这些选项,看看会发生什么。
答案 1 :(得分:2)
我遇到了同样的问题(在Android上),并意识到我正在使用的库(ngCordova / cordovaOauth)正在删除缓存和会话数据(使用public List<ChildObj> getChildren(ParentObj obj) {
return parentObjService.findAllFor(obj);
}
。
所以它现在有效:我记住了我使用的登录信息,而且我不必再次重新输入密码。所以cookie肯定会保留,至少在android上。
如果您有兴趣,请参阅ngCordova中的相关代码:
public List<ChildObj> getChildren(ParentObj obj) {
if (obj == null)
return new ArrayList<ChildObj>(); // return empty ArrayList to avoid crashing
else
return parentObjService.findAllFor(obj);
}
我根据自己的需要稍微修改了一下。您会在第200行找到原始here(查找window.open(..., ..., 'clearsessioncache=yes,clearcache=yes')
)。