最近,我们将 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 的安全解决方案吗?
我们在同一个应用程序上运行多个域。
当前,我们的数据库环境设置是将配置数据库复制到每个数据库服务器。从服务器拥有配置数据库和用户数据库。
我们通过检查使用的域来确定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) 我需要在文本区域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) php ×2
angularjs ×1
database ×1
encryption ×1
html ×1
javascript ×1
laravel ×1
laravel-8 ×1
model ×1
mysql ×1