Demo.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. namespace app\api\controller;
  3. use app\common\controller\Api;
  4. /**
  5. * 示例接口
  6. */
  7. class Demo extends Api
  8. {
  9. //如果$noNeedLogin为空表示所有接口都需要登录才能请求
  10. //如果$noNeedRight为空表示所有接口都需要验证权限才能请求
  11. //如果接口已经设置无需登录,那也就无需鉴权了
  12. //
  13. // 无需登录的接口,*表示全部
  14. protected $noNeedLogin = ['test', 'test1'];
  15. // 无需鉴权的接口,*表示全部
  16. protected $noNeedRight = ['test2'];
  17. /**
  18. * 测试方法
  19. *
  20. * @ApiTitle (测试名称)
  21. * @ApiSummary (测试描述信息)
  22. * @ApiMethod (POST)
  23. * @ApiRoute (/api/demo/test/id/{id}/name/{name})
  24. * @ApiHeaders (name=token, type=string, required=true, description="请求的Token")
  25. * @ApiParams (name="id", type="integer", required=true, description="会员ID")
  26. * @ApiParams (name="name", type="string", required=true, description="用户名")
  27. * @ApiParams (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据")
  28. * @ApiReturnParams (name="code", type="integer", required=true, sample="0")
  29. * @ApiReturnParams (name="msg", type="string", required=true, sample="返回成功")
  30. * @ApiReturnParams (name="data", type="object", sample="{'user_id':'int','user_name':'string','profile':{'email':'string','age':'integer'}}", description="扩展数据返回")
  31. * @ApiReturn ({
  32. 'code':'1',
  33. 'msg':'返回成功'
  34. })
  35. */
  36. public function test()
  37. {
  38. $this->success('返回成功', $this->request->param());
  39. }
  40. /**
  41. * 无需登录的接口
  42. *
  43. */
  44. public function test1()
  45. {
  46. $this->success('返回成功', ['action' => 'test1']);
  47. }
  48. /**
  49. * 需要登录的接口
  50. *
  51. */
  52. public function test2()
  53. {
  54. $this->success('返回成功', ['action' => 'test2']);
  55. }
  56. /**
  57. * 需要登录且需要验证有相应组的权限
  58. *
  59. */
  60. public function test3()
  61. {
  62. $this->success('返回成功', ['action' => 'test3']);
  63. }
  64. }