yii2.0 api post報(bào)錯(cuò)的解決方法:1、關(guān)閉「_csrf」驗(yàn)證;2、在表單中新增隱藏域;3、在Ajax中新增「_csrf」資料欄位;4、將「post ”提交改為“get”。
Yii2.0中POST提交資料時(shí)出現(xiàn)400請求錯(cuò)誤
1、發(fā)現(xiàn)問題所在的方法
使用Chrome瀏覽器,檢查錯(cuò)誤,到network查看response:
Bad Request (#400): Unable to verify your date submission. (無法驗(yàn)證提交的數(shù)據(jù))
推薦:《yii教學(xué)》
2、解決方法
(1)關(guān)閉_csrf驗(yàn)證
public function init(){ $this->enableCsrfValidation = false; }
(2)在表單中添加隱藏域
<input name="_csrf" type="hidden" id="_csrf" value="<?= Yii::$app->request->csrfToken ?>">
如果我們使用的是Yii框架的助手類生成表單,它會自帶_csrf字段,不需要我們額外地添加隱藏域。
(3)Ajax中新增_csrf資料欄位
$.ajax({ url: 'demo.php',//發(fā)送驗(yàn)證碼的url type: 'post', data: { _csrf:"<?=Yii::$app->request->csrfToken?>", mobile:123 }, success: function(){ alert('發(fā)送成功'); }, error: function(){ alert('發(fā)送失敗'); return false; } })
(4)最簡單的方法,將post提交改為get
說明:Yii框架有自帶的資料驗(yàn)證功能,如果我們post提交的資料不帶有和框架對應(yīng)的_csrf相同的驗(yàn)證資料字段,提交的資料會被視為不可信的字段,便會出現(xiàn)400錯(cuò)誤。
以上是解決yii2.0 api post報(bào)錯(cuò)問題的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

熱AI工具

Undress AI Tool
免費(fèi)脫衣圖片

Undresser.AI Undress
人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

Oracle是一家全球知名的資料庫管理系統(tǒng)供應(yīng)商,其API(ApplicationProgrammingInterface,應(yīng)用程式介面)是一種強(qiáng)大的工具,可協(xié)助開發(fā)人員輕鬆地與Oracle資料庫互動和整合。在本文中,我們將深入探討OracleAPI的使用指南,向讀者展示如何在開發(fā)過程中利用資料介面技術(shù),同時(shí)提供具體的程式碼範(fàn)例。 1.Oracle

如何在PHP專案中透過呼叫API介面來實(shí)現(xiàn)資料的爬取與處理?一、介紹在PHP專案中,我們經(jīng)常需要爬取其他網(wǎng)站的數(shù)據(jù),並對這些數(shù)據(jù)進(jìn)行處理。而許多網(wǎng)站提供了API接口,我們可以透過呼叫這些接口來取得資料。本文將介紹如何使用PHP來呼叫API接口,實(shí)現(xiàn)資料的爬取與處理。二、取得API介面的URL和參數(shù)在開始之前,我們需要先取得目標(biāo)API介面的URL以及所需的

開發(fā)建議:如何利用ThinkPHP框架進(jìn)行API開發(fā)隨著網(wǎng)際網(wǎng)路的不斷發(fā)展,API(ApplicationProgrammingInterface)的重要性也日益凸顯。 API是不同應(yīng)用程式之間進(jìn)行通訊的橋樑,它可以實(shí)現(xiàn)資料共享、功能呼叫等操作,為開發(fā)者提供了相對簡單且快速的開發(fā)方式。而ThinkPHP框架作為一款優(yōu)秀的PHP開發(fā)框架,具有高效能、可擴(kuò)展且易用

OracleAPI整合策略解析:實(shí)現(xiàn)系統(tǒng)間無縫通信,需要具體程式碼範(fàn)例在當(dāng)今數(shù)位化時(shí)代,企業(yè)內(nèi)部系統(tǒng)之間需要相互通信和資料共享,而OracleAPI就是幫助實(shí)現(xiàn)系統(tǒng)間無縫通信的重要工具之一。本文將從OracleAPI的基本概念和原則入手,探討API整合的策略,最終給出具體的程式碼範(fàn)例幫助讀者更好地理解和應(yīng)用OracleAPI。一、OracleAPI基本

標(biāo)題:如何處理LaravelAPI報(bào)錯(cuò)問題,需要具體程式碼範(fàn)例在進(jìn)行Laravel開發(fā)時(shí),常會遇到API報(bào)錯(cuò)的情況。這些報(bào)錯(cuò)可??能來自於程式碼邏輯錯(cuò)誤、資料庫查詢問題或是外部API請求失敗等多種原因。如何處理這些報(bào)錯(cuò)是一個(gè)關(guān)鍵的問題,本文將透過具體的程式碼範(fàn)例來示範(fàn)如何有效處理LaravelAPI報(bào)錯(cuò)問題。 1.錯(cuò)誤處理在Laravel

ReactAPI呼叫指南:如何與後端API進(jìn)行互動和資料傳輸概述:在現(xiàn)代的Web開發(fā)中,與後端API進(jìn)行互動和資料傳輸是一個(gè)常見的需求。 React作為一個(gè)流行的前端框架,提供了一些強(qiáng)大的工具和功能來簡化這個(gè)過程。本文將介紹如何使用React來呼叫後端API,包括基本的GET和POST請求,並提供具體的程式碼範(fàn)例。安裝所需的依賴:首先,確保在專案中安裝了Axi

PHP是一種廣泛應(yīng)用於網(wǎng)站開發(fā)的程式語言,而頁面跳躍並攜帶POST資料是在網(wǎng)站開發(fā)中常見的需求。本文將介紹如何實(shí)現(xiàn)PHP頁面跳轉(zhuǎn)並攜帶POST數(shù)據(jù),包括具體的程式碼範(fàn)例。在PHP中,頁面跳躍一般透過header函數(shù)實(shí)現(xiàn)。如果需要在跳轉(zhuǎn)過程中攜帶POST數(shù)據(jù),可以透過以下步驟完成:首先,建立一個(gè)包含表單的頁面,使用者在該頁面填寫資訊並點(diǎn)擊提交按鈕。在表單的acti

PHPAPI介面:如何使用InsomniaInsomnia是一款功能強(qiáng)大的API測試和偵錯(cuò)工具,它能夠幫助開發(fā)者快速、方便地測試和驗(yàn)證API接口,支援多種程式語言和協(xié)議,其中包括PHP。本文將介紹如何使用Insomnia測試PHPAPI介面。第一步:安裝InsomniaInsomnia是一款跨平臺的應(yīng)用程序,支援Windows、MacOS和Linux等
