解决yii2.0 api post报错问题

藏色散人
풀어 주다: 2020-07-20 10:26:18
원래의
2490명이 탐색했습니다.

yii2.0 api post报错的解决办法:1、关闭“_csrf”验证;2、在表单中添加隐藏域;3、在Ajax中添加“_csrf”数据字段;4、将“post”提交改为“get”。

解决yii2.0 api post报错问题

Yii2.0中POST提交数据时出现400请求错误

1、发现问题所在的方法

使用Chrome浏览器,检查错误,到network查看response:

Bad Request (#400): Unable to verify your date submission.   (无法验证提交的数据)
로그인 후 복사

推荐:《yii教程

2、解决方法

(1)关闭_csrf验证

public function init(){
    $this->enableCsrfValidation = false;
}
로그인 후 복사

(2)在表单中添加隐藏域

로그인 후 복사

如果我们使用的是Yii框架的助手类生成表单,它会自带_csrf字段,不需要我们额外地添加隐藏域。

(3)Ajax中添加_csrf数据字段

$.ajax({
             url: 'demo.php',//发送验证码的url
             type: 'post',
             data: {
                 _csrf:"request->csrfToken?>",
                 mobile:123
             },
             success: function(){
                     alert('发送成功');
             },
             error: function(){
                 alert('发送失败');
                 return false;
             }
         })
로그인 후 복사

(4)最简单的方法,将post提交改为get

说明:Yii框架有自带的数据验证功能,如果我们post提交的数据不带有和框架对应的_csrf相同的验证数据字段,提交的数据会被视为不可信的字段,便会出现400错误。

위 내용은 解决yii2.0 api post报错问题의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!