[PHP]什么?学前端的你竟然不会写个简单的接口,快来瞅一瞅

[PHP]使用PHP来完成第一个前后端分离接口

  • 作为一个合格的前端,不会点后端怎么行?(-_-其实是前端不好独立做项目,简易的后端还是要一学的)

目录

  1. 实现第一个简易接口
  2. 简易接口还不够,我要同文件多个接口
  3. 多个接口算什么?我要传参!

1. 实现第一个简易接口

  1. 首先在能够运行php的环境目录下,创建第一个php文件,我们将此命名为 api.php,其代码如下
<?php
echo "这是第一个API!";	// echo 之后的内容将会被返回
  1. 建立html文件,我这里命名为index.html,并正确引入jquery,写好ajax访问代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>php测试</title>
    <script src="js/jquery-3.3.1.min.js"></script>	<!--这里是引入jquery,不一定相同-->
    <style>
        h1{
            font-weight:200;
        }
    </style>
</head>
<body>
    <div id="app">
        <h1>实现你的第一个php接口</h1>
        <button id="btn">点击获取信息</button>
        <p>没有获取到信息哦。。。</p>
    </div>
    <script>
        $("#btn").click(function () {
            $.get("./api.php",function (data) {
                $("p").text(data);	// 这里是将回调的数据设置给p标签
            })
        })
    </script>
</body>
</html>
  1. 保存好,运行index.html,默认是这个样子的.

在这里插入图片描述

  1. 触发按钮后,接到数据,终

在这里插入图片描述

关于PHP的提示

在这里插入图片描述

  • 由于我的所有文件都是在集成环境xampp的htdocs目录下,所以不存在跨域问题
  • 如果不放在同样目录下,可能会遇到跨域问题,需要在php中添加如下语句
header('Content-Type: text/html;charset=utf-8');
// 指定允许其他域名访问
header('Access-Control-Allow-Origin:*');
// 响应类型
header('Access-Control-Allow-Methods:POST');
// 响应头设置
header('Access-Control-Allow-Headers:x-requested-with,content-type');

2. 简易接口还不够,我要同文件多个接口

  1. 创建 api1.php 文件,代码如下
<?php

$type = $_GET["type"];	// 获取链接中 ?type= 之后的数据

if($type == "hello"){	//第一个链接
    echo "Hello World!";
}

if($type == "hi"){		//第二个链接
    echo "hi csdn!";
}
  • 通过 api1.php?type=hello 的链接,会触发第一个,api1.php?type=hi会触发第二个
  1. 接下来我们将 index.html 的部分代码进行修改
$("#btn").click(function () {
            $.get("./api1.php?type=hello",function (data) {	// ?之后的内容是我们要传的参数
                $("p").text(data);
            })
})
  • 按钮运行效果如下
    在这里插入图片描述
$("#btn").click(function () {
            $.get("./api1.php?type=hi",function (data) {
                $("p").text(data);
            })
})
  • 按钮运行效果如下
    在这里插入图片描述

3. 多个接口算什么?我要传参!

  • 传参的方式与2大致相同,这里仅仅演示了GET提交请求。
  • 这次我们尝试使用表单输入框,将输入的文本去PHP后台走一遭
  1. 创建 api2.php
<?php

$text = $_GET["text"];

if(isset($text)){
    echo "你传入的文本是$text";
}
  1. 修改 index.html 增加input文本框
<body>
    <div id="app">
        <h1>实现你的第一个php接口</h1>
        <input type="text" id="text1">
        <button id="btn">点击获取信息</button>
        <p>没有获取到信息哦。。。</p>
    </div>
    <script>
        $("#btn").click(function () {
            let text = $("#text1").val();
			// 下面将文本框的内容以GET提交的方式挂在URL之后
            $.get("./api1.php?text="+text ,function (data) {
                $("p").text(data);
            })
        })
    </script>
</body>
  1. 接下来,让我们尝试一下运行效果
  • 按下按钮后,数据在后台走了一圈后,被传了回来

在这里插入图片描述

今天的博客就到这里啦 点赞收藏支持博主吧

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值