继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

yii2配置词典 / 请求配置(request)你知多少? -- 下篇

abei2017
关注TA
已关注
手记 33
粉丝 1万
获赞 234

上一篇我们说了request一些常用的变量及配置,本篇为你说明其他的配置。

parsers

这是一个不常用但是很重要的配置项,默认情况下yii2只能解析application/x-www-form-urlencoded和multipart/form-data的数据类型,当然你还可以增加自己的请求解析类,比如我们想让yii2能自动解析json则可以如下配置。

'request' => [
    'parsers' => [
        'application/json' => 'yii\web\JsonParser',
    ]
]

左侧代表请求的content-type,右侧代表针对此内容类型的解析类,JsonParser类yii2已经内置了,你也可以自己造一个。

enableCsrfValidation

这也是个比较主要的参数,正常来说对于post请求,yii2都会进行csrf验证,但是有些比如微信接口给我们程序进行post推送的时候就没有crsfToken提供,因此我们需要关闭它。

一种方法就是在控制器里将 $enableCsrfValidation 设置为false,当然你还可以在request组件里配置。

'request' => [
    'enableCookieValidation' => false
],
methodParam

这个参数的默认值是_method,当然你可以在request组件中对其重新设置,虽然那样没什么意义。

这个参数的主要意义是模拟除了GET / POST请求之外的其他请求,比如PUT / DELETE等。

当你在post数据的时候带上 $_POST['_method'] = 'PUT',则yii2会认为是PUT请求。这种情形在restful中会用到。

总结

到此为止,在yii2中关于request的配置项就介绍完了,希望对您有用。

阿北的知识分享

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP