Blog的API(php裸写,运用jwt登录

这个API需要一个apache的改写
将全部的入口都丢入index,这样才能作为一个API被使用

这份代码目前丢在我的Github

调用方与设计方提前商定好API接口。
如在本机上跑"localhost/API/restful/" 是自己的文件
可以设计一个.htaccess的系统文件,这个文件调整的是apache的重写规则

RewriteEngine on    //apache的重写文件 

RewriteCond %{REQUEST_FILENAME} !-d //这里如果不是文件也不是目录,才会把这条URL交给以下RewriteRule执行,且
RewriteCond %{REQUEST_FILENAME} !-f //多个RewriteCond在一起只对下一个RewriteRule产生影响
RewriteRule ^(.*$) index.php/$1 [L] //默认这个目录下的访问全部转到index.php下
^(.*)$ 为匹配所有的路径映射到入口文件 index.php/$1

这个中括号中[L]的意义:
Apache Rewrite规则修正符 
1) R 强制外部重定向 
2) F 禁用URL,返回403HTTP状态码。 
3) G 强制URL为GONE,返回410HTTP状态码。 
4) P 强制使用代理转发。 
5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。 
6) N 重新从第一条规则开始运行重写过程。 
7) C 与下一条规则关联 

$pdo = new PDO('mysql:host=ip地址;dbname=数据库名','root','数据库密码');  //创建一个数据库句柄
$pdo->query("SET NAMES utf8");  //设置数据库内容取出的内容为utf-8格式

$pdo = require 'Db.php'; //句柄的调用


关于一个类的调用,其数据库的句柄应该通过构造方法来调用

关于数据库的调用可以这么写
$sql = 'SELECT * FROM `zhuche` WHERE `username` = :username';     //这里:是占位符 防sql注入
        $stmt = $this->_db->prepare($sql);         //调用自己变量直接不用$
        $stmt->bindParam(':username',$username); //给刚才的变量进行赋值
        $stmt->execute();                
        $result = $stmt -> fetch(PDO::FETCH_ASSOC);     //进行一个数据类型为数组的查询,
	//如果只是修改上句话就省掉变成
	if(!$stmt->execute()){
            throw new Exception('注册失败',ErrorCode::REGISTER_FAIL);
        }
switch($a){
	5:
	
	4:
}5:和4:后面分别为$a的值为5或者4产生的结果.
前缀为localhost/API/restful
//用户的注册/users
POST "username" : ,
"password" : ,
"name" : ,
"intro" : ,
"sex" : ,"email": 这么6个变量
//文章的创建先要有登录(在postman的,/articles
POST "title": , "content":
//文章的修改/articles/5(需要登录   这里需要加上一个/id
PUT "title": , "content":
//文章的查询,分2种
//1、有/id,确定查找某id
GET 直接在url后加个/id即可查找出
//2、查找一个人写的,但是id这里需要为0才表示查找一个list
GET 在url后面?authorid=27这么加

question:

1、密码是MD5加密的,那么字符串要设置得足够长度

2、测API,提交的数据。如get之类用postman是在params里,而body是获取raw里的数据

3、通过header给的token数据,注意带有头bearer这个字符在里面

API文档

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值