谈谈php对接芝麻信用踩的坑

这里有新鲜出炉的PHP面向对象编程,程序狗速度看过来!

PHP开源脚本语言

PHP(外文名: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,入门门槛较低,易于学习,使用广泛,主要适用于web开发领域。PHP的文件后缀名为php。

由于支付宝的普及,芝麻信用的使用也越来越广,本文谈谈php对接芝麻信用踩的坑,有兴趣的同学可以了解一下。

由于项目需要,接入芝麻信用对用户进行认证,打开芝麻信用官方网站( https://b.zmxy.com.cn/index.htm)查看官方demo,在文档中看到如图

瞬间觉得这个官方demo的垃圾了。

在其中有需要注意如下:

1.本地生成密钥,可以按照提示进行生成

2.在“商家管理”中创建应用,通过第一步生成的密钥得到芝麻信用给的公钥,这就得到了加密用的密钥

注意:芝麻信用给的公钥只能复制,但是复制出来的格式是不对的,需要咱们手工处理每行64,和咱们生成的密钥格式一致,不然加密和解密将不能进行;

3.需要传递的参数根据文档可以得出,上图只是生成了一个参数,需要处理生成对应文档的数据返回;

直接上代码:

include('/ZmopClientphp');

include('/ZhimaAuthInfoAuthorizeRequestphp');

classTestAuthFreeze{

//芝麻信用网关地址

public$gatewayUrl="https://zmopenapizmxycomcn/openapido";

//商户公钥文件

//芝麻公钥文件

public$privateKeyFile="path/rsa_private_keypem";

public$zmPublicKeyFile="path/zima_public_keypem";

//数据编码格式

public$charset="UTF-8";

//芝麻分配给商户的appId

public$appId="1000003";

//生成移动端SDK 集成需要的sign 参数 ,并进行urlEncode

publicfunctiongenerateSign($certNo,$name,$certType='IDENTITY_CARD'){

$client=newZmopClient($this->gatewayUrl,$this->appId,$this->charset,$this->privateKeyFile,$this->zmPublicKeyFile);

$request=newZhimaAuthInfoAuthorizeRequest();

$request->setScene("test");

// 授权来源渠道设置为appsdk

$request->setChannel("appsdk");

// 授权类型设置为2标识为证件号授权见“章节4中的业务入参说明identity_type”

$request->setIdentityType("2");

// 构造授权业务入参证件号,姓名,证件类型;“章节4中的业务入参说明identity_param”

$request->setIdentityParam("{\"certNo\":\"$certNo\",\"certType\":\"IDENTITY_CARD\", \"name\":\"$name\"}");

// 构造业务入参扩展参数“章节4中的业务入参说明biz_params”

$request->setBizParams("{\"auth_code\":\"M_APPSDK\"}");

$params=$client->generateEncryptedParamWithUrlEncode($request);

$sign=$client->generateSignWithUrlEncode($request);

$data['gatewayUrl']=$this->gatewayUrl;

$data['appId']=$this->appId;

$data['charset']=$this->charset;

$data['params']=$params;

$data['sign']=$sign;

return$data;

}

// 解密

publicfunctionzhimacallback($params){

$this->privateKeyFile="path/rsa_private_keypem";

$client=newZmopClient($this->gatewayUrl,$this->appId,$this->charset,$this->privateKeyFile,$this->zmPublicKeyFile);

$result=$client->generateSignCallBack($params,$this->privateKeyFile);

return$result;

}

}

?>

来源: http://www.phperz.com/article/17/0906/340963.html

芝麻信用网页api php,谈谈php对接芝麻信用踩的坑相关推荐

  1. 芝麻信用网页api php,PHP芝麻信用接入的注意事项

    本文给大家整理了接入芝麻api借口的两点注意事项,对php 芝麻信用接入感兴趣的朋友通过本文一起学习吧 芝麻官方下载的SDK,跑不起来,百度搜索一番也没有发现太多的文章 ,只有一个CSDN博客写的一篇 ...

  2. 芝麻信用网页api php,PHP芝麻信用接入的注意事项_php实例

    芝麻官方下载的SDK,跑不起来,百度搜索一番也没有发现太多的文章 ,只有一个CSDN博客写的一篇文章,比较有参考价值 详细查阅文档+几天测试整理以下几点注意事项: 接入芝麻API接口,应该分2步: 第 ...

  3. 谈谈对接芝麻信用踩的坑

    由于项目需要,接入芝麻信用对用户进行认证,打开芝麻信用官方网站( https://b.zmxy.com.cn/index.htm)查看官方demo,在文档中看到如图: 瞬间觉得这个官方demo的垃圾了 ...

  4. 淘宝/天猫/1688拍立淘API接口(以图搜商品API接口,图片搜索API接口,图片搜索商品API接口)代码对接教程

    淘宝/天猫/1688拍立淘API接口(以图搜商品API接口,图片搜索API接口,图片搜索商品API接口)代码对接教程如下: 1.公共参数 名称 类型 必须 描述(接口代码教程wx19970108018 ...

  5. 淘宝天猫开放平台店铺商品发布(新)-淘宝店铺发布API接口流程代码对接说明

    淘宝天猫开放平台店铺商品发布(新)-淘宝店铺发布API接口,天猫店铺发布API接口,oAuth2.0店铺发布接口,店铺商品API接口,店铺商品接口发布API接口流程代码对接说明: 公共参数 名称 类型 ...

  6. PHP网页代理cc攻击无需对接版源码

    介绍: PHP网页代理cc攻击无需对接版源码     源码目录 index.html 首页 cc.php 核心文件 count.php 使用统计 pv.php 访问测试页面 ip.txt 代理IP数据 ...

  7. 爬虫系列教程四:动态网页api分析实例之爬取dropbox上的pdf

    动态网页api分析实例:爬取dropbox上的pdf 动态网页api分析实例:爬取dropbox上的pdf 任务 分析 写代码和debug 今天老师让我下载一个网课里面的pdf材料,pdf的数目比较多 ...

  8. VBA POST 调用网页API 格式化SQL语句

    工作中遇到一个场景,需要用VBA把SQL语句重新美观格式化一下,本来想直接调用本地的SQLWORKBENCH工具来实现这一功能,无奈找不到command参数,不能被VBA直接调用,作罢. 网上找到可以 ...

  9. 信用评分卡知道不?就是芝麻分那种东西,自己用机器学习来做一个吧

    点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 作者:Hongri Jia 编译:ronghuaiyang 前戏 对于金融行业的 ...

最新文章

  1. ArcGIS API for Silverlight 实现修改地图上的工程点位置
  2. 浏览器打开html文件显示中文乱码解决方法
  3. python 认证_Django 用户认证
  4. 使用webpack4搭建一个基于Vue的组件库
  5. 洛谷 - P3389 【模板】高斯消元法(高斯消元解方程)
  6. python中的赋值、浅拷贝和深拷贝
  7. java yyyy m d_日期-Java 8时间API:如何将格式“ MM.yyyy”的字符串解析为LocalD
  8. g4e基础篇#2 Git分布式版本控制系统的优势
  9. 什么是 TCC分布式事务
  10. JM与h264标准中的关键字说明
  11. Timus 1114. Boxes
  12. linux 使用systemctl 设置java进程开机启动,管理springboot开机进程
  13. 白国涛:磐基PaaS平台推动中国移动数字化转型
  14. 鸿蒙硬件HI3861-连接WIFI
  15. 服务器上的文件如何查看,如何查看远程服务器上的文件
  16. react WangEditor 编辑器阿里云OSS上传图片
  17. PC网站接入微信登陆流程一:微信开放平台账号注册和开发者资质认证
  18. 朗强科技:什么是HDMI分配器,以及原理与安装
  19. php mysql webim_webim(icomet) 使用
  20. vue-element-admin 后台管理系统

热门文章

  1. 如何使用Lumberyard制作特效[【1】——Overview
  2. Fetch的使用及兼容ie的处理
  3. ionic3实现app启动时进行网络监测功能
  4. mac下网络监测工具
  5. matlab经纬度画轨迹图_MATLAB将经纬度坐标转换成直角坐标
  6. 移动硬盘里文件夹不见了 内容还在 不显示
  7. 用友通账套备份操作流程
  8. 基于JavaWeb的新闻发布管理系统设计与实现
  9. meanshift算法
  10. 【腾讯云的1001种玩法】几种在腾讯云建立WordPress的方法(Linux)(二)