python thinkphpapi_thinkphp5 RESTful API使用示例demo

这篇博客展示了如何使用ThinkPHP5框架构建RESTful API,包括GET、POST、PUT、PATCH和DELETE操作的实现,并提供了路由配置和Postman测试的说明。还附带了相关资源的下载链接和视频学习地址。
摘要由CSDN通过智能技术生成

thinkphp5 RESTful API使用示例demo

龙行    PHP    2019-6-23    1346    0评论

下面是一个使用RESTful API设计理论实现的api基于TP5,直接上demo

先来看看目录结构

按着上面先创建文件

来看看News.php里面得到内容<?php

namespace app\api\controller\v1;

use think\Controller;

use app\api\common\model\VendorNews;

/**

* Created by PhpStorm.

* User: lt175

* Date: 2019/6/23

* Time: 21:31

*/

class News extends Controller

{

public function index()

{

$data = [

'username' => '张三',

'age' => 18

];

if ($data) {

$code = 200;

} else {

$code = 404;

}

$data = [

'code' => $code,

'data' => $data

];

return json($data);

}

//获取详情 http://api.test.com/index.php/v1/News/3

public function view($id)

{

if ($id === 1) {

$data[] = ['a' => 1];

}

$data[] = [

'detail' => '这个是view方法',

];

if ($data) {

$code = 200;

} else {

$code = 404;

}

$data = [

'code' => $code,

'data' => $data

];

return json($data);

}

//创建 http://api.test.com/index.php/v1/News

public function create()

{

$postData = $this->request->param();

$data = ['data' => 123];// 查询数据

if ($data) {

$code = '123' . 'news/post';

} else {

$code = 404;

}

$data = [

'code' => $code,

//'data' => $data

];

return json($data);

}

//更新 http://api.test.com/index.php/v1/News/25

public function update($id)

{

if (!$id) {

json(["code" => 5001, "message" => "没有获取到id"]);

}

$data = 1;// 查询数据

if ($data) {

$code = 201;

} else {

$code = 404;

}

$data = [

'code' => $code,

//'data' => $data

];

return json($id);

}

//删除 http://api.test.com/index.php/v1/News/25

public function delete($id)

{

if (!$id) {

json(["code" => 5001, "message" => "没有获取到id"]);

}

$data = 1;// 查询数据

if ($data) {

$code = 204;

} else {

$code = 404;

}

$data = [

'code' => $code,

//'data' => $data

];

return json($data);

}

}

再来看看application/route.php 路由<?php

use think\Route;

Route::get('think', function () {

return 'hello,ThinkPHP5!';

});

Route::get('hello/:name', function ($name) {

return $name ;

});

Route::get('hello/:name', 'index/hello');

//获取某一个活动

//获取列表

Route::get(':version/News', 'api/:version.News/index');

//创建数据

Route::post(':version/News', 'api/:version.News/create');

//更新数据

Route::put(':version/News/:id', 'api/:version.News/update');//全部更新

Route::PATCH(':version/News/:id', 'api/:version.News/update');//更新个别字段

//删除

Route::delete(':version/News/:id', 'api/:version.News/delete');

//Route::options(':version/News', 'api/:version.News');

然后使用postman测试get,post,delete

没开伪静态所以index.php就别管了 :version是版本号

可以看看RESTful API   详细介绍

下面的这些资源是偶然间发现做个笔记,反正我应该不会看的

视频学习地址:

源码和文档(如果满意,欢迎 star):

百度云盘链接: https://pan.baidu.com/s/1Fsa9tGvXLstRL1fwkDByHg 提取码: hy4t

看云文档:

评论一下

赞助站长

赞助站长X

版权申明:此文如未标注转载均为本站原创,自由转载请表明出处《龙行博客》。

本文网址:https://www.liaotaoo.cn/262.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值