小编Ale*_*lex的帖子

Laravel 是否重新生成会话 ID?(与 CodeIgniter 相比)

CodeIgniter 2 在每次 http 调用时重新生成会话 ID。这会导致并发 ajax 调用出现问题。这使得客户端和服务器可能不同步并且会话丢失。对此的修复不是在 ajax 调用上更新会话(请参阅Codeigniter 会话因 ajax 调用而出错)。但是,如果您将 CodeIgniter 用作单个页面应用程序的 API,其中每个调用都是 ajax,这只会导致会话根本不会更新。用户会在会话超时(默认 5 分钟)后注销。

在 CodeIgniter 3 中,他们试图通过在会话存储上使用写锁(参见https://github.com/bcit-ci/CodeIgniter/issues/3073)来解决这个问题。因为这依赖于数据库功能,所以只能在 MySQL 和 PostgreSQL 中安全地存储会话信息。例如,Redis 无法使用(请参阅http://www.codeigniter.com/userguide3/installation/upgrade_300.html#step-6-update-your-session-library-usage)。

最后我的问题是:Laravel 如何处理这个问题?Laravel 可以使用 Redis 进行会话存储。那么laravel什么时候重新生成session id呢?如果 Laravel 没有在每个 http 请求上自动重新生成它,如何在安全方面进行判断?

session codeigniter laravel

5
推荐指数
1
解决办法
885
查看次数

通过线性组合转换矩阵的旋转动画可以实现放大缩小

我有一个3x3矩阵(startMatrix),它代表图像的实际视图(平移,旋转和缩放).现在我创建一个新的矩阵(endMatrix),其中包含一个identitymatrix,新的x和y坐标,新的角度和新的比例,如:

endMatrix = translate(identityMatrix, -x, -y);  
endMatrix = rotate(endMatrix, angle);  
endMatrix = scale(endMatrix, scale);
endMatrix = translate(endMatrix,(screen.width/2)/scale,screen.height/2)/scale);
Run Code Online (Sandbox Code Playgroud)

和功能(标准的东西)

function scale(m,s) {
    var n = new Matrix([
        [s, 0, 0],
        [0, s, 0],
        [0, 0, s]
    ]);
    return n.multiply(m);
}
function rotate(m, theta) {
    var n = new Matrix([
        [Math.cos(theta), -Math.sin(theta), 0],
        [Math.sin(theta), Math.cos(theta), 0],
        [0, 0, 1]
    ]);
    return n.multiply(m);
}
function translate(m, x, y) {
    var n = new Matrix([
        [1, 0, x],
        [0, 1, y],
        [0, 0, 1] …
Run Code Online (Sandbox Code Playgroud)

javascript animation transform matrix

5
推荐指数
1
解决办法
402
查看次数