小编xyo*_*nme的帖子

如何在 Laravel 8 中解密 cookie

最近,我们将 Laravel 应用程序从 5.6 升级到 Laravel 8.18.1。我们在RouteServiceProvider.php中使用cookie解密。

HomeController.php

Cookie::queue("频道", "移动", 60 24 1); // 通道加密值 = eyJpdiI6IjJVTGFzZHdEOXpjMk9VTGFFYmlSbXc9PSIsInZhbHVlIjoid0djMW9zbThWOXFQTk5aVXBDNmJBdz09IiwibWFjIjoiZGM4M2U1YTY0ZjVkNTE4NjBlNzg4NTZiNzhkNjdjYzcyODU zZWU1ZWMzNjdkNGNlMTgyZGIwNmQ4NjYzOWM3MSJ9

在 Laravel 5.6 中,它直接将哈希值解密为值。

路由服务提供商.php

$encrypter = app(\Illuminate\Contracts\Encryption\Encrypter::class);
$channel_cookie = $encrypter->decrypt(Cookie::get('channel')); // result "mobile"
Run Code Online (Sandbox Code Playgroud)

在 Laravel 8.18.1 中,它将哈希值解密为带有竖线的值。

路由服务提供商.php

$encrypter = app(\Illuminate\Contracts\Encryption\Encrypter::class);
$channel_cookie = $encrypter->decrypt(Cookie::get('channel')); // result "a86aa854d5e61e2873acd30373b6725e36fba671|mobile"
$channel_cookie = explode("|",$channel_cookie)[1]; // result mobile
Run Code Online (Sandbox Code Playgroud)

这是在 Laravel 8 中解密 cookie 的安全解决方案吗?

php encryption laravel-8

6
推荐指数
1
解决办法
3644
查看次数

根据域更改数据库连接

我们在同一个应用程序上运行多个域。

当前,我们的数据库环境设置是将配置数据库复制到每个数据库服务器。从服务器拥有配置数据库和用户数据库。

我们通过检查使用的域来确定RouteServiceProvider.php上的数据库连接。

域1将与数据库服务器A(config_db + A_user_db)连接。例:

database.php

'connections' => [  
    'db_config' => [
        'driver' => 'mysql',
        'host' => '192.168.0.10', 
        'port' => 'XXXX',
        'database' => 'config_db',
        'username' => 'xxxx',
        'password' => 'xxxx'
    ],    

    'db_user_a' => [
        'driver' => 'mysql',
        'host' => '192.168.0.10', 
        'port' => 'XXXX',
        'database' => 'a_user_db',
        'username' => 'xxxx',
        'password' => 'xxxx'
    ],    

]
Run Code Online (Sandbox Code Playgroud)

域2将与数据库服务器B(config_db + B_user_db)连接。例:

database.php

 'connections' => [   
    'db_config' => [
        'driver' => 'mysql',
        'host' => '192.168.0.5', 
        'port' => 'XXXX',
        'database' => 'config_db',
        'username' => 'xxxx', …
Run Code Online (Sandbox Code Playgroud)

php mysql database model laravel

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

AngularJS在textarea中渲染HTML

我需要在文本区域SUBMIT FORM中呈现HTML值.我可以将html值绑定到a <div>而不是a中<textarea>.此外,ng-model对于数据绑定可以检索值,但它显示为html.

调节器

//task.descr contains "<br>-------<br><a href="http://www.google.com"..."
var str="<br><hr><br>"+ task.descr;
//str= $sce.trustAsHtml(str);
$scope.formData5 = {
    descr: str}
console.log($scope.formData5);


<textarea placeholder="Deskripsi Memo"  name="descr" 
ngMaxlength="1000" ng-model="formData5.descr" 
ng-bind-html="formData5.descr" > </textarea>
Run Code Online (Sandbox Code Playgroud)

html javascript angularjs

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

php ×2

angularjs ×1

database ×1

encryption ×1

html ×1

javascript ×1

laravel ×1

laravel-8 ×1

model ×1

mysql ×1