亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

如何讓vue的axios組件和PHP后端交換數據

2020-03-22 19:31:09
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了關于如何讓vue的axios組件和PHP后端交換數據,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

 

一、前言

axios是vue項目中用來使用ajax技術來與后臺交換數據的一個組件,在vue的作者推薦下,相當數量的vue前端開發人員開始使用它。但是在實際開發過程中,卻時有出現后端接收不到前端post過來的數據的情況。以PHP語言開發的后臺為例,PHP原生的預定義變量$_POST就無法接收(因為解析失敗)。本文的目的在于探討前后端數據交互,并給出不同的解決方案供大家參考。

二、目前$_POST可接收的數據形式

Form Data
這種數據形式其實就是鍵值對,例如id:1,如果有多組鍵值對并且有嵌套的情況,則如下

role-name:tarole-desc:xxxxxxxxxcloud[cla]:001cloud[cla_baijia]:001cloud[cla_gongkai]:001local[soft5]:001local[soft6]:001mgmt[mgmt-clouditems]:01

PHP服務端接收到的數據其實是這樣子的

role-name=ta role-desc=xxxxxxxxx id=2 cloud%5Bcla%5D=001 cloud%5Bcla_baijia%5D=001 cloud%5Bcla_gongkai%5D=001 local%5Bsoft-5%5D=001 local%5Bsoft-6%5D=001 mgmt%5Bmgmt-clouditems%5D=01

是不是與url的參數特別像?
這種鍵值對的數據被稱為QueryString,瀏覽器的原生 form 表單發送這種數據時會把請求頭設為application/x-www-form-urlencoded。
QueryString就能被PHP的$_POST成功解析

經典的前端庫jQuery下的jQuery ajax 的 serialize()方法和param()方法就是為把數據轉化為QueryString而提供的解決方案,前者轉化表單數據,后者轉化JSON數據。
而且jQuery的ajax請求中會判斷傳入的數據形式,隱式調用param()方法來轉化json數據,所以使用者只需直接提供json數據即可成功把數據成功提交到后臺,需要顯式(手動)調用param()方法的機會不多。jq默認的發送的請求頭也是application/x-www-form-urlencoded,大多數情況下并不需要使用者手動設置。

回到我們的axios中,axios默認發送的請求頭為application/json,簡單來說,它默認就是會把json傳到后端,并不轉化為QueryString。

三、解決方法1、前端把數據轉化為QueryString

引入qs庫,調用stringify方法

 template  input type= button name= login html' target='_blank'>value= 數據提交 @click= post  /template  script import axios from axios import qs from qs var json={ role-name : ta , role-desc : xxxxxxxxx , id : 2, cloud : { cla : 001 , cla_baijia : 001 , cla_gongkai : 001  local : { soft-5 : 001 , soft-6 : 001  mgmt : { mgmt-clouditems : 01 export default { methods:{ post(){ axios.post( http://localhost/web/index.php/admin/login/login ,json,{ //配置`transformRequest` ,在向服務器發送前,修改請求數據,axios會根據修改后的數據,自動設置請求頭 transformRequest:[function(data){ return qs.stringify(data);//把數據轉化為QueryString }).then(res= { console.log(res); /script 
2、PHP后端使用php://input獲取原始數據

在前端不做任何改變的情況下,因為預定義變量$_POST無法解析,php后端只能使用php://input獲取原始的數據,然后再轉化為想要的數據形式。
如果PHP后臺使用原生開發,則可自定義一個函數處理每次請求的數據。
如果PHP后臺使用特定的框架開發,則要看框架本身是否支持處理php://input,簡單的一個測試方法就是在框架的源代碼全文搜索php://input,如果能搜到,則有支持,否則不支持,需要自己擴展相關的處理代碼。

PHP框架yii2.0為例,全文搜索vendor目錄,可知在yiisoft- yii2- web- Request.php的494行有相關處理代碼。
實際使用只需在配置文件web.php配置

 components = [ request = [ parsers = [ application/json = yiiwebJsonParser  // 其他配置 //其他組件配置 ]

以上就是前端處理和后端處理兩種解決方案,可根據實際情況選擇

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP !

相關推薦:

如何設置yii數據庫的長連接

關于yii改善并發數的性能優化的方法

以上就是如何讓vue的axios組件和PHP后端交換數據的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品xxxxx| 国产精品久久久久久久久久久久| 一本色道久久综合亚洲精品小说| 亚洲电影免费观看高清完整版在线| 久久久久久有精品国产| 久久成人18免费网站| 国产成人福利视频| 久久久久久国产精品久久| 最近2019年中文视频免费在线观看| 午夜精品久久久久久99热软件| 亚洲精品99999| 亚洲精品日韩av| 欧美激情一区二区三区久久久| 精品亚洲一区二区三区| 欧美日韩999| 欧美超级免费视 在线| 久久亚洲私人国产精品va| 久久精品成人欧美大片古装| 国产亚洲精品久久久久久| 精品色蜜蜜精品视频在线观看| 国产原创欧美精品| 亚洲精品98久久久久久中文字幕| 日韩av在线看| 国产在线999| 亚洲欧美日韩第一区| 亚洲第一精品久久忘忧草社区| 亚洲国产毛片完整版| 国产成人一区二区三区小说| 欧美在线一级视频| 欧美日韩激情视频| 国产精品夜色7777狼人| 中文日韩在线观看| 日本久久久a级免费| 国产成人a亚洲精品| 亚洲人成网站色ww在线| 中文字幕亚洲一区在线观看| 国产一区二区精品丝袜| 欧美激情视频网站| 欧美一级黄色网| 色诱女教师一区二区三区| 久久免费少妇高潮久久精品99| 国产成人精品最新| 成人高清视频观看www| 91高清免费视频| 亚洲欧美在线磁力| 91免费在线视频网站| 日韩精品一区二区三区第95| 日韩黄色高清视频| 亚洲欧美综合精品久久成人| 91禁国产网站| 欧美激情视频在线免费观看 欧美视频免费一| 欧美性xxxxxxx| 国产一区二区三区视频免费| 国产精品白丝av嫩草影院| 欧美在线xxx| 国产午夜精品一区二区三区| 91在线直播亚洲| 亚洲精品国产电影| 国产亚洲精品久久久久久| 午夜精品视频在线| 欧美国产亚洲精品久久久8v| 国产成人jvid在线播放| 亚洲国产精品福利| 亚洲电影av在线| 97人人做人人爱| 久青草国产97香蕉在线视频| 午夜精品久久17c| 国产精品第七十二页| 国产成人精品久久二区二区91| 欧美色图在线视频| 亚洲国产精品va在看黑人| 欧美激情国产日韩精品一区18| 欧美精品久久久久久久久久| 国产成人久久久| 亚洲国产一区自拍| 亚洲精品美女久久| 中文字幕精品视频| 国产99久久精品一区二区 夜夜躁日日躁| 欧洲成人在线观看| 亚洲精品动漫100p| 亚洲美女视频网站| 日韩电影免费在线观看| 九九九热精品免费视频观看网站| 国内精品400部情侣激情| 国产精品影片在线观看| 欧美激情成人在线视频| 97在线视频免费播放| 欧洲精品久久久| 亚洲免费av电影| 亚洲а∨天堂久久精品喷水| 一区二区在线免费视频| 一区二区在线视频| 欧美成年人视频| 久久伊人精品视频| xxxxx成人.com| 亚洲第一视频网站| 色妞久久福利网| 国产精品aaa| 亚洲韩国欧洲国产日产av| 中文字幕av一区二区| 九色精品免费永久在线| 美日韩精品免费观看视频| 亚洲iv一区二区三区| 97精品免费视频| 亚洲天堂网站在线观看视频| 国产精品人人做人人爽| 国产一区二区三区在线播放免费观看| 久久91亚洲精品中文字幕奶水| 日韩在线免费视频| 欧美日韩国内自拍| 成人国产精品久久久久久亚洲| 欧美最猛性xxxxx(亚洲精品)| 欧美激情久久久久久| 久久久免费高清电视剧观看| 国产精品日韩久久久久| 亚洲欧美一区二区精品久久久| 日韩国产中文字幕| 久久久久久久久久国产| 成人免费高清完整版在线观看| 亚洲第一天堂无码专区| 2019中文字幕在线免费观看| 狠狠干狠狠久久| 黄色成人在线免费| 国产成人免费av| 成人精品视频99在线观看免费| 成人欧美在线视频| 精品视频www| 奇米成人av国产一区二区三区| 日韩欧美aⅴ综合网站发布| 爱福利视频一区| 欧美久久久精品| 91精品国产色综合久久不卡98口| 国产精品视频区1| 国产精品美女视频网站| 69久久夜色精品国产69| 亚洲精品免费在线视频| 中文字幕在线成人| 国产成人91久久精品| 欧美午夜精品久久久久久浪潮| 精品美女久久久久久免费| 九九精品在线播放| 久久久亚洲精品视频| 97久久超碰福利国产精品…| 日韩欧美在线视频| 国模视频一区二区| 久久99国产精品久久久久久久久| 日本韩国欧美精品大片卡二| 狠狠躁夜夜躁久久躁别揉| 毛片精品免费在线观看| 精品日韩中文字幕| 中文精品99久久国产香蕉| 亚洲精品ady| 在线中文字幕日韩| 在线日韩精品视频| 国产日韩专区在线| 亚洲天堂av在线免费观看| 98精品国产自产在线观看| 国产精品美女在线观看| 国产91在线播放| 亚洲乱码一区二区| 日本亚洲精品在线观看| 欧美肥臀大乳一区二区免费视频| 国产综合香蕉五月婷在线| 国产精品精品一区二区三区午夜版|