thinkphpjwt(thinkphpjwt类库)

http://www.itjxue.com  2023-02-13 14:36  来源:未知  点击次数: 

PHP实现苹果第三方授权登录

一、先获取apple的公钥

获取Apple公钥访问地址:

得到以下的格式

取Apple公钥,key数组里面任意一个,例如

二 获取解密的字符串

通过Apple公钥在线( )得到用于解密的pem公钥字符串

复制公钥粘贴到输入框,提交,得到公钥

三 校验

校验客户端传过来的$identityToken,通过jwt校验

yii-jwt 怎么玩

工具/原料

Yii

PhpStudy

方法/步骤

下载yii,打开yii官网,找到你要下载的内容

再安装php环境,这里列出我用的PHPstudy.图中介绍安装

下载完的yii放在www文件夹下

4

打开\framework下面 yiic.bat运行这个文件创建的应用,或者 在www目录下新建index.php 其内容:

?php

// change the following paths if necessary

$yii=dirname(__FILE__).'/framework/yii.php';

$config=dirname(__FILE__).'/protected/config/main.php';

// remove the following line when in production mode

// defined('YII_DEBUG') or define('YII_DEBUG',true);

require_once($yii);

Yii::createWebApplication($config)-run();

?

加载框架

打开 : 本地浏览就可以看到你安装成功了

Thinkphp5.1 使用jwt生成和解析token 一 2021-04-01

一 通过Composer安装firebase/php-jwt 5.2.1版本

二 common.php公共函数文件

PHP---APP接口02

JSONXML

XML: 是一种标记语言,设计的宗旨是传输数据

JSON: 轻量级的数据交换格式

APP接口主要是用JSON输出格式

APP接口输出格式三要素:

1. code::错误码

2. msg:错误码对应的描述

3. data:接口返回的数据

谁有权限调用APP接口,客户端需要带着凭证来调用APP接口

JWT的原理:

服务端认证之后,生成一个JSON对象,返回给用户。后续客户端所有请求都会带上这个JSON对象。服务端依靠这个JSON对象来认定用户身份。

组成: Header, Payload, Signature

1. Header

说一下我是什么

header通常包含了两部分:类型和加密算法

{

? ? "alg": "HS256",

? ? "typ": "JWT"

}

header需要经过Base64Url编码后作为IWT的第一部分。

2. Payload

payload包含了claim, 三种类型reserved, public, private

reserved这些claim是JWT预先定义的,不强制使用,常用的有:

1). iss: 签发者

2). exp: 过期的时间戳

3). sub: 面向的用户

4). aud: 接收方

5). iat: 签发时间

{

? ? "sub":? "1234567890",

? ? "name":? "John Doe",

? ? "admin": true

}

payload需要经过Base64Url编码后作为JWT的第二部分。

3. Signature

创建签名使用编码后的header和payload以及一个密匙,使用header中指定的签名算法进行签名

HMACSHA256(

base64UrlEncode(header) + "." +

base64UrlEncode(payload),

secret

)

签名是在服务端进行的,客户端并不知道,所以是安全的。

thinkphp验证码(支持图片和base64)

配置

config文件夹下新建captcha.php 加入配置信息

调用加密并生成验证码(在thinkphp的验证码基础上修改的)

调用解密

加密包 firebase/php-jwt

原插件地址

(责任编辑:IT教学网)

更多

推荐MYSQL文章