本文實(shí)例講述了Thinkphp5框架ajax接口實(shí)現(xiàn)方法。分享給大家供大家參考,具體如下:
前一篇講到thinkphp5從數(shù)據(jù)庫獲取數(shù)據(jù)之后賦給視圖view ,前一篇從數(shù)據(jù)渲染方式來說是服務(wù)端數(shù)據(jù)渲染,這一章則是瀏覽器端數(shù)據(jù)渲染。按照知識(shí)總結(jié)依據(jù)來劃分,這是兩種不同的技術(shù)場景。
下面介紹具體的ajax接口實(shí)現(xiàn)代碼。
首先是html代碼部分,我的訪問地址為:http://app.write.com/thinkphp/public/index.php/index/index/api,這里沒有省略入口文件,同時(shí)我本地的域名是app.write.com,tp5框架在thinkphp文件里面。這里采用原生ajax,沒有做ie瀏覽器的兼容性,代碼如下
!DOCTYPE html>
html lang="en">
head>
meta charset="UTF-8">
title>ajax調(diào)用接口/title>
/head>
body>
11111
div id="test">
/div>
script type="text/javascript">
var oAjax = new XMLHttpRequest();
oAjax.open('GET',"/thinkphp/public/index.php/index/index/apiapi?name=1");
oAjax.onreadystatechange = function() {
if (oAjax.readyState == 4) {
if (oAjax.status >= 200 oAjax.status 300 || oAjax.status == 304) {
console.log(oAjax.responseText);
var data=JSON.parse(oAjax.responseText);
document.getElementById("test").innerHTML=data.sex;
} else {
console.log(oAjax.status);
}
}
};
oAjax.send();
/script>
/body>
/html>
對(duì)上述代碼做一下解釋,算是一個(gè)小知識(shí)點(diǎn):一般來說可以將http狀態(tài)代碼為200作為成功的標(biāo)志,此時(shí)responseText的屬性的內(nèi)容已經(jīng)就緒。此外狀態(tài)304表示請(qǐng)求的資源并沒有被修改,可以直接使用瀏覽器中緩存的版本。
至于為啥是大于200是出于兼容性的考慮,有的瀏覽器會(huì)報(bào)告204。
后端代碼如下,后端代碼是同一個(gè)模塊index下的同一個(gè)控制器下index的apiapi方法。
?php
namespace app\index\controller;
//use think\Db;
use think\Controller;
class Index extends Controller
{
public function apiapi(){
$name=$this->request->param();
return json_encode($name);
///return "common";
}
public function api(){
return view();
///return "common";
}
}
代碼首先獲取ajax獲取的參數(shù),之后返回到前端。
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
您可能感興趣的文章:- thinkphp5 + ajax 使用formdata提交數(shù)據(jù)(包括文件上傳) 后臺(tái)返回json完整實(shí)例
- TP5(thinkPHP5)框架使用ajax實(shí)現(xiàn)與后臺(tái)數(shù)據(jù)交互的方法小結(jié)
- ThinkPHP5.1+Ajax實(shí)現(xiàn)的無刷新分頁功能示例
- ThinkPHP5 通過ajax插入圖片并實(shí)時(shí)顯示(完整代碼)
- thinkPHP+mysql+ajax實(shí)現(xiàn)的仿百度一下即時(shí)搜索效果詳解
- ThinkPHP框架結(jié)合Ajax實(shí)現(xiàn)用戶名校驗(yàn)功能示例
- thinkPHP利用ajax異步上傳圖片并顯示、刪除的示例
- TP5(thinkPHP5)框架基于ajax與后臺(tái)數(shù)據(jù)交互操作簡單示例
- ThinkPHP 5 AJAX跨域請(qǐng)求頭設(shè)置實(shí)現(xiàn)過程解析