草庐IT

cookie,localStorage和sessionStorage的区别?

全部标签

javascript - 如何设置 JavaScript cookie 在 10 年后过期?

我在这部分代码中使用的函数设置了cookie过期时间:time+=3600*1000;一小时后过期。怎么设置10年后过期? 最佳答案 注意:自2017年6月23日上午9:04:01起,toGMTString()已弃用,不应再使用。它的实现只是为了向后兼容;请改用toUTCString()。更多信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toGMTStringvarCookieDate=newDate;

javascript - "let"和 "var"有什么区别?

引入ECMAScript6theletstatement.我听说它被描述为局部变量,但我仍然不太确定它的行为与var关键字有何不同。有什么区别?什么时候应该使用let而不是var? 最佳答案 范围规则主要区别在于范围规则。var关键字声明的变量作用域为直接函数体(因此函数作用域),而let变量作用域为直接封闭block表示通过{}(因此是block作用域)。functionrun(){varfoo="Foo";letbar="Bar";console.log(foo,bar);//FooBar{varmoo="Mooo"letbaz

javascript - uneval() 和 .toSource() 有什么区别

uneval(...)和.toSource()有什么区别?ThetoSource()methodreturnsastringrepresentingthesourcecodeoftheobject.Theuneval()methodcreatesanstringrepresentationofthesourcecodeofanObject. 最佳答案 一个接受参数,另一个不接受。这似乎是唯一的区别,尽管不鼓励同时使用两者。uneval(object);Object.toSource();obj.toSource();https://

javascript - .click() 和创建鼠标事件的区别?

所以我想找出两者之间的差异link.click()和varevent=document.createEvent("MouseEvents");event.initEvent("click",true,false);link.dispatchEvent(event);据我所知,这些应该是相同的(但是使用我从URI导出csv的jsfiddle示例,情况并非如此,因为它们在浏览器之间的表现不同)在firefox中使用.click()弹出窗口不会显示下载csv(它会在chrome中显示)参见示例->http://jsfiddle.net/a5E9m/23/它将在何处使用鼠标事件参见示例->ht

javascript - "new"和直接调用生成器函数有什么区别?

我知道“新建”和直接调用普通函数的区别。但是生成器函数的情况如何呢?例如:function*counter(){letn=0;while(n他们好像一样? 最佳答案 生成器允许您通过编写一个可以维护其自身状态的函数来定义迭代算法。生成器是一种特殊类型的函数,可作为迭代器的工厂。如果一个函数包含一个或多个yield表达式,它就成为一个生成器。当一个生成器函数被调用时,函数体不会立即执行;相反,它返回一个生成器迭代器对象。每次调用生成迭代器的next()方法都会执行函数体直到下一个yield表达式并返回其结果。当到达函数末尾或返回语句时

javascript - SPA 中刷新 token Cookie 的 CSRF 保护

我在AngularJSSPA中使用资源所有者密码凭证OAuth2.0流程。有几篇文章(here,here..)和thisquestion的答案。这解释了我们不应该在(网络)客户端(LocalStorage)上存储刷新token,而是将它们加密存储在HttpOnlyCookie中并使用代理API,我们在其中实现刷新token的解密以将其转发到安全token服务。大多数文章都暗示我们应该通过使用一种常见的保护机制来关注CSRF。我想知道单页应用程序中的最佳解决方案是什么。Angular$http引用解释了我们应该如何应对CSRF的默认机制:服务器必须设置一个名为XSRF-TOKEN的coo

javascript - 为什么 Facebook JavaScript SDK 不设置 cookie?

我遇到了一个问题,FacebookJavaScriptSDK没有在某些机器上设置cookie,因此当我尝试使用我的应用程序的secret值验证cookie时,我的后端验证失败了。我有一个demoapp;重要的文件是:app.rbdemo.js客户端使用FacebookJavaScriptAPI登录用户并获取他们的详细信息,然后将这些发布到我的服务器。服务器发回客户端随后显示的fbs_APPID。在某些Windows机器上(在所有浏览器中),服务器没有获得预期的cookie。是什么阻止了Facebook设置cookie,我该如何修复它?演示应用程序是在Sinatra中,但我们发现错误的生

javascript - jquery.tmpl 和 jquery.tmplPlus 有什么区别?

我正在考虑开始在我的项目中使用jQuery模板引擎。这两个有什么区别?另外,现在是开始使用tmpl的好时机吗,因为它仍处于测试阶段? 最佳答案 jquery.tmpl已被弃用,不会以目前的形式开发。jQueryUI团队已经接管了模板项目,并将再次从头开始。更多信息在这里http://blog.jquery.com/2011/04/16/official-plugins-a-change-in-the-roadmap/http://wiki.jqueryui.com/w/page/37898666/Template不幸的是,我依赖于现

cookie 源的 Javascript 跟踪

我有一个带有大量Javascript行的服务器,我需要检查行,这会设置一个新的cookie。所有JS文件都被缩小了(变量名被缩写为一个字符等),因此几乎不可能通过cookie的名称搜索它。是否有任何软件/调试器/浏览器/方法/任何能够跟踪设置一些cookie的代码行?我尝试使用Chrome内置的webkit调试器,它允许我设置“事件监听器断点”。不幸的是,它无法监听设置新的cookie。 最佳答案 如果我必须这样做,我会先beautifythesourcecode为了使其更具可读性,然后找到任何设置cookie的行(例如通过搜索正则

javascript - localStorage 不会在两个页面之间持久存储

我正在开发一个应用程序,在某些时候,我需要存储需要在多个页面之间持久存在的信息,更可能的是,它只会是2个页面。信息量在几个字节到大约15KB之间变化(永远不会超过20KB)。我真的无法事先正确预测它会是多少。为此,我决定使用localStorage。现在我只在localhost:8080上工作。这些页面目前只有通用名称:pageA.php和pageB.php。页面驻留在域的根目录中。即http://localhost:8080/pageA.phphttp://localhost:8080/pageB.php...在某些时候,我将数据存储在pageA.php的localStorage上(