微信小程序PHP后端接口使用JWT验证

以前写小程序接口都是裸奔(因为想着SSL可以保护一下),再然后就是谁没事搞我的个人小玩意。

现在有一个小项目需要使用接口,想着还是加个验证吧,一直裸奔也不太好。小程序没法使用web的session,突然想起前端早八点小程序推送过一篇关于JWT( JSON Web Token)的方法。

简单说一下,就是你第一次访问接口的时候,比如是登录,如果登录完成,服务器会下发一个token,这个token是有期限的,还附加一个payload,还有别的,这里使用最简洁的用法,当你拿到这个token,以后每次去访问接口,都会验证是否被篡改,如果token解密正确,则接口返回数据,怎么验证呢,第一个按照原先的加密方式,解密,之后,还要检查过期时间,防止被拿到token一直被爬数据,时间一到,还要重新申请。你也可以把token放到数据库里,每次访问接口验证用户id就好了。

为了快速简单的使用:我从GitHub找了一个写好的工具类(最后我会把JWT的地址放上)

看看用法:这里是发放token,至于逻辑,可以自行处理,我用的是微信的wx.login去请求微信的session来确认是否发放token。

eg:可以选择算法,作者用的是PHP内置的一些加密方式,我在token的exp上设置了20分钟过期。

<?php

/*
 * Copyright(c)2011 Miguel Angel Nubla Ruiz (miguelangel.nubla@gm
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值