【发布时间】:2018-08-21 03:34:51
【问题描述】:
我正在尝试使用 Laravel 可以理解的 Javascript 代码创建一个加密的 cookie。
我当前的 laravel 项目包含一个纯 JS 代码。在那个 JS 代码中,我显示了一个 JQVMAP.com 地图,人们单击以定义他们的国家。为了创建位置 cookie,我包含了以下代码:
setCookie(cookieName, code, 60); // minutes
问题是该值是以纯文本形式创建和存储的 -> EG: 'US'
但是,对于 Laravel,我需要以与 laravel 加密生成 cookie 相同的方式创建一个 cookie,其中“美国”数据表示如下:
eyJpdiI6IjBlYlZqUU14ZWt4Q2FKUjNJd25BM.....
老实说,尽管我阅读了 stackoverflow 和 google,但我无法找到一种方法来做到这一点。
任何帮助表示赞赏
【问题讨论】:
-
为什么要加密值?您使用客户端 JS 所做的任何事情都可以由您的最终用户修改。你不能相信它。
-
谢谢@Chris,不是为了安全。问题是,如果不安全,laravel 无法解释该值。我试图在 Middleware\Encryptcookies.php 的异常中包含一个 cookie,但我有同样的问题。这就是我问的原因。 brgds
-
@Chris laravel 指南:“Laravel 框架创建的所有 cookie 都经过加密并使用验证码签名”因此使用 {{Request::cookie('cookie name')}} 时没有值如果是纯文本,则检索
标签: javascript php encryption cookies laravel-5