当表单提交时,我想加密参数。我使用的是Laravel5.2版本,当表单提交的时候,我使用get method来提交表单。但是当提交表单时,时间会显示URL中的所有参数。所以所有这些参数我都要加密。例如
http://localhost:8000/get/experiences?category_id=18至
http://localhost:8000/get/experiences/AQBBShSqt4zxsClTymwBhjIUP1kG7HEoqhoKMfAAlsMk2ZUOxStqGLAFFg0mM1nRKMEVVbB97xCvfRJTP0ZH3k1Am我该怎么做?
发布于 2016-12-28 06:24:18
您需要定义路线:
Route::post('/get/experiences/{category_id}', 'Controller@method');在此之后,您可以制作以下表格:
<form action="{{ url('/get/experiences/'.encrypt($category_id)) }}" method="post">
<!-- all your form data -->
<input type="submit" value="Post">
</form>这将向路由发送一个POST请求,/get/experiences/{category_id},它将使用encrypt方法来encrypt您的$category_id。
希望这行得通!
发布于 2016-12-28 06:25:47
使用encrypt()全局助手加密数据,然后使用decrypt()解密数据。
发布于 2016-12-28 06:30:44
您可以使用post方法。将Route::post('/get/experiences/{category_id}', 'Controller@method');添加到您的路由中,不要忘记在表单标记中添加{!! csrf_field() !!}代码。
参数将不会显示在URL中,因此您不必进行加密。当然,如果您不想使用get方法,特别是加密。
https://stackoverflow.com/questions/41356446
复制相似问题