Laravel Hash :: make()响应与原始哈希

时间:2017-04-24 10:56:33

标签: laravel

我使用Hash :: make来哈希我的laravel api控制器中的客户ID。但是当我返回Hashed客户ID时,我会得到错误的字符。这是我的代码:

$key=Hash::make($input['key']);
$createnewkey=DB::table('customers')->where('custid', $input['custid'])
                           ->update(array("key"=>$key));
return ["STATUS"=>1, "KEY"->$key];

我得到了例如:Av $ @ wqe @!3aferty10 / 2YyAU ....并且已经保存在数据库中。

但请求响应是:Av $ @ wqe @!3aferty10 / \ 2YyAU \或/总是替换为/ \会破坏我的哈希码比较

1 个答案:

答案 0 :(得分:1)

Laravel Hash使用password_hash的{​​{1}}功能。此函数将生成 base64 编码的字符串。其角色列表中包含PHP。因此,如果您在URL中传递该URL,您的网址将会损坏。

相反,您可以使用/来加密在URls中传递的密钥。

这是laravel的hashids端口:https://github.com/vinkla/laravel-hashids