by Devin Yang

建立于: 7年前 ( 更新: 7年前 )

为何Laravel需要有Form Method Spoofing呢?
因为HTML表单并不支持PUTPATCHDELETE动作,因此在Laravel
在提交HTML表单送出时,我们需要透过一个隐藏的_method输入栏,作为HTTP的请求发送。
这样Laravel的Restful风格路由才可以知道这个请求是PUT还是PATCH...等。

Laravel 5.5版前,表单可使用埋入两个隐藏input栏位:
<form action="/foo/bar" method="POST">
    <input type="hidden" name="_method" value="PUT">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">
</form>
或是
<form action="/foo/bar" method="POST">
    {{ method_field('PUT') }}
    {{ csrf_field() }}
</form>
Laravel 5.6版后,我们也可以透过Blade directive达到相同的效果:
<form action="/foo/bar" method="POST">
    @method('PUT')
    @csrf
</form>

 

Tags: laravel

Devin Yang

文章内容无法一一说明,如果您有什么不了解处,欢印提问哦:)

No Comment

Post your comment

需要登入才可留言!

类似文章


laravel

Laravel 5.6有那些新变更

Laravel 5.6计划於2018年2月释出,有那些变更呢?我们来看看吧。(Argon2i Password Hashing Algorithm) Argon2 提供以下三种版本: 1. 在Laravel 5.6将支持 Argon2i密码哈希算法。 (Argon2i Password Hashing Algorithm) 2. Argon2d最大限度地抵抗GPU的破解攻击。 3. Argon2i经过优化,可以抵抗旁路攻击(side-channel attack)。 三、Argon2id是一个混合版本。 它遵循Argon2i方法进行第一遍遍历,然后使用Argon2d方法进行后续遍历。 看不懂没关系,反正我也看不懂,重点是,反正比较安全是可以确定的。这是开放密码杂^竞赛(PHC)在2015年7月20日

laravel

Laravel思绪整理,从Model到DatabaseSeeder.

本文将一步一步介绍相关的命令用例: Model=>Factory=>Seeder=>DatabaseSeeder 一步一脚印,让我们就从Model开始检视所有流程到DatabaseSeeder。

laravel,letsencrypt,haproxy

PHPENV的HAProxy环境设置与免费SSL证书申请

PHPENV已经添加了haproxy.yml的支持了罗,如果您有外网IP及域名,想弄HAProxy及证书申请透过deviny/phpenv 应该相当简单。本文就让我们看看如何在PHPENV中的HAProxy环境中设置中使用HAProxy吧。