tp5 API 测试

Posted 一颗糊涂淡

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tp5 API 测试相关的知识,希望对你有一定的参考价值。

index控制器--从数据库获取值

<?php

namespace appindexcontroller;

class Index
{
    public function api($title = ‘‘)
    {
        if (!$title) {
            $data = model(‘Shici‘)->find();
        } else {
            $data = model(‘Shici‘)::getBytitle($title);
        }
        // return "<div><h2>".$data[‘content‘]."</h2></div>";
        return  json($data);
        // dump($data);
    }
}

user控制器  对外接口

<?php

namespace appindexcontroller;

use thinkController;
use thinkRequest;

class User extends Controller
{
    public function index()
    {
        return view();
    }
    public function capi()
    {
        $url = "http://apitest.so/index/index/api/";
        $ch = curl_init($url . ‘?title=‘ . input(‘title‘)); //初始化curl会话
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //将curl会话执行的结果不输出,以数据流的形式保存起来 1表示不返回bool值
        // $data = curl_exec($curl);
        $data = json_decode(curl_exec($ch), true); //执行会话,将结果保存到$data中 以数组形式返回结果
        curl_close($ch); //关闭会话
        return $data;
        // $curl = curl_init();
        // curl_setopt($curl, CURLOPT_URL, $url. ‘?title=‘ . input(‘title‘));
        // curl_setopt($curl, CURLOPT_HEADER, 0); //不抓取头部信息。只返回数据
        // curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //1表示不返回bool值
        // // $data = curl_exec($curl);
        // $data=json_decode(curl_exec($curl),true);
        // curl_close($curl); //关闭会话
        // return $data;
        // // dump($data);

    }
}

html部分

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    <div>api接口测试</div>
    <form>
        <input type="text" name="title">
        <input type="button" value="提交查询" id="test">
    </form>
    <br>
    <div id="show" style="width: 500px;margin: 0 auto;"></div>
    <script src="__JS__/jquery-3.4.1.js"></script>
    <script>
        $(function () {
            $(#test).click(function () {
                $.ajax({
                    type: "POST",
                    dataType: "json",
                    url: "http://apitest.so/index/user/capi",
                    data: $(form).serialize(),
                    success: function (res) {
                        console.log(res);
                        console.log(typeof (res));
                        var data = "<div style=‘text-align:center‘><h3>" + res.title + "</h3></div><div style=‘text-align:center‘><h6>" + res.dynasty+""+res.author + "</h6></div><div style=‘text-align:center‘><h4>" + res.content + "</h4></div>";
                        $(#show).html(data);
                    }
                });
            })
        })
    </script>
</body>

</html>

以上是关于tp5 API 测试的主要内容,如果未能解决你的问题,请参考以下文章

TP5报如下的错误 Indirect modification of overloaded element of thinkpaginatorCollection has no effect(代码片段

ThinkPHP-5.0.23新的RCE漏洞测试和POC

Flask 编写http接口api及接口自动化测试

tp5优化api速度

tp5优化api速度

Android SMS Verification API 结果码始终为 0