百度智能云-身份证验证(完整版-直接用)

news2024/11/27 2:27:47

百度云网址:

https://cloud.baidu.com

身份验证的技术文档:

技术代码:

导入依赖:

        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>3.12.13</version>
            <scope>compile</scope>
        </dependency>
		<dependency>
			<groupId>com.squareup.okhttp3</groupId>
			<artifactId>okhttp</artifactId>
			<version>3.12.13</version>
			<scope>compile</scope>
		</dependency>
    // JSONObject的依赖
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.70</version>
        </dependency>
// io流的依赖
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.4</version>
        </dependency>
//hutool
<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.16</version>
</dependency>

控制层:

    /***
     * 身份证验证上传图片接口
     */
    @PostMapping ("identityToken/{param}")
    public Result identityToken(@PathVariable("param")Integer param , MultipartFile file, HttpServletRequest request) throws IOException {
        System.out.println("图片=="+file);
        CereBuyerUser user = (CereBuyerUser) request.getAttribute("user");
        return agentUserService.identityToken(user,file,param);
    }

处理的事物层

    Result identityToken(CereBuyerUser user, MultipartFile file,Integer param) throws IOException;
package com.example.demo.service.Impl;

import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject;
import com.example.demo.service.AgentUserService;
import com.example.demo.util.Base64Util;
import com.example.demo.util.FileUtil;
import com.example.demo.util.HttpUtils;
import okhttp3.*;
import org.apache.commons.io.FilenameUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;

import java.io.File;
import java.io.IOException;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

import static com.example.demo.util.IdentityCardUtil.*;

@Service
public class AgentUserServiceImpl implements AgentUserService {
    static final OkHttpClient HTTP_CLIENT = new OkHttpClient().newBuilder().build();

    @Value("${identity.url}")
    private String identityUrl;
    @Value("${identity.apiKey}")
    private String apiKey;
    @Value("${identity.secrtetKey}")
    private String secrtetKey;
    /**
     * 身份验证
     * @param
     * @return
     */
    @Override
    public String identityToken(MultipartFile file, String param) throws IOException {
        //获得身份验证token
        MediaType mediaType = MediaType.parse("application/json");
        RequestBody body = RequestBody

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1097044.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

操作系统学习——进程调度

三种不同的调度 进程调度的两种基本方式 非剥夺方式&#xff1a;一旦吧处理机分配给某个进程后&#xff0c;便让他一直运行&#xff0c;知道进程完成或者发生某事件而阻塞&#xff0c;才把处理机转给另一个进程。 剥夺方式&#xff1a;某个进程运行时&#xff0c;如果有中断或…

flutter app开发环境搭建

Flutter是一个跨终端、多设备的应用界面开发工具&#xff0c;其支持web端、移动端、桌面端以及嵌入式不同应用场景的应用开发&#xff0c;其使用dart语言作为开发语言&#xff0c;本文主要描述Flutter开发环境搭建。 如上所示&#xff0c;从Flutter官方网站下载最新版本的Flutt…

AP8851H 降压恒压DC电源芯片 5V12V 零功耗快充应用

1&#xff0c;产品描述 AP8851H 一款宽电压范围降压型 DC-DC 电源管理芯片&#xff0c;内部集成使能 开关控制、基准电源、误差放大器、过 热保护、限流保护、短路保护等功能&#xff0c; 非常适合在宽输入电压范围具有优良 的负载和线性调整度。 AP8851H 芯片包含每周期的峰值…

iOS开发- CMMotionManager 开发

文章目录 一、CMMotionManager1.1 push方式1.2pull 方式 二、设备运动类型1. attitude2. rotationRate3. gravity4. userAcceleration5. magneticField & heading iOS 中常见传感器如下所示: 类型作用环境光传感器感应光照强度距离传感器感应靠近设备屏幕的物体磁力计传感器…

千兆光模块和万兆光模块的适用场景有哪些

随着数字化和物联网的普及&#xff0c;对网络速度和带宽的要求也越来越高。千兆光模块和万兆光模块是两种常见的光模块&#xff0c;在不同的应用场景中&#xff0c;它们各具优势。下面我们来探讨一下千兆光模块和万兆光模块的主要适用场景。 首先是企业网络。千兆光模块常用于…

环形海尔贝克Halbach磁体阵列

环形海尔贝克阵列是一种特殊形状的磁体结构&#xff0c;它的设计思路是通过将形状相同磁化方向不同的多个磁体组合而成一个圆环形磁体&#xff0c;以增强工作面或中心磁场的均匀性和稳定性。使用Halbach阵列结构的永磁电机较传统永磁电机具有更接近正弦分布的气隙磁场&#xff…

【LeetCode热题100】--105.从前序与中序遍历序列构造二叉树

105.从前序与中序遍历序列构造二叉树 二叉树前序遍历顺序&#xff1a;根左右 二叉树中序遍历顺序&#xff1a;左根右 只要我们在中序遍历中定位到根节点&#xff0c;那么我们就可以分别知道左子树和右子树中的节点数目。由于同一颗子树的前序遍历和中序遍历的长度显然是相同的…

实际开发精品贴-1- Winhex使用,给SD卡烧录bin文件

资料获取 Winhex中文破解版本 由于是订阅用户,所以也支持作者帮忙下载,可直接联系我本人 点击下载 教学开始 由于是订阅用户,文章会非常详细 解压我分享的文件,右键点击图标,以管理员方式打卡 -1-你的SD卡插入读卡器,并且初始化SD卡 -2-点击第一步的地方 -3-点击第…

数据结构--哈希表(Hash Table)

1. 哈希表简介 哈希表&#xff08;Hash Table&#xff09;&#xff1a;也叫做散列表。是根据关键码值&#xff08;Key Value&#xff09;直接进行访问的数据结构。 哈希表通过「键 key 」和「映射函数 Hash(key) 」计算出对应的「值 value」&#xff0c;把关键码值映射到表中一…

阿里企业邮箱能发开发信吗?群发邮件技巧?

阿里企业邮箱如何群发营销邮件&#xff1f;邮箱发开发信的方法&#xff1f; 对于许多企业而言&#xff0c;开发信是一种重要的沟通工具&#xff0c;用于与客户、合作伙伴和供应商建立联系。在本文中&#xff0c;蜂邮EDM将探讨阿里企业邮箱是否支持发送开发信&#xff0c;以及如…

通讯网关软件025——利用CommGate X2Modbus实现Modbus RTU访问DDE数据源

本文介绍利用CommGate X2Modbus实现Modbus RTU访问DDE数据源。CommGate X2MODBUS是宁波科安网信开发的网关软件&#xff0c;软件可以登录到网信智汇(http://wangxinzhihui.com)下载。 【案例】如下图所示&#xff0c;实现上位机通过Modbus RTU来获取DDE数据源的数据。 【解决方…

推荐5款各种原因导致很少人知道的小软件

​ 很多软件用起来很好用&#xff0c;但是由于这样那样的原因&#xff0c;一直没什么知名度&#xff0c;但是不代表它们不好用&#xff0c;我的任务就是把这些宝藏分享给大家。 1.图像编辑——GIMP ​ GIMP是一款免费的开源图像编辑器&#xff0c;可以用于创建和修改图像&…

word写论文遇到数字和文字中间空格删不掉

一、如何删除&#xff1f; 1、选中需要有数字和汉字那段文字 2、点击段落下拉 3、找到中文版式 4、将【自动调整中文与数字的间距】取消勾选&#xff08;不要勾选&#xff09; 5、点击确定即可删除啦

众和策略:小盘和大盘的关系?

在股票商场上&#xff0c;股票能够被分为小盘股和大盘股两类。那么&#xff0c;二者之间有什么联络呢&#xff1f;这篇文章将从多个视点来分析小盘和大盘的联络。 商场表现 首要&#xff0c;让我们看看两者在商场表现上的差异。大盘股是市值较大的股票&#xff0c;一般在首要股…

探寻蓝牙的未来:从蓝牙1.0到蓝牙5.4,如何引领无线连接革命?

►►►蓝牙名字的来源 这要源于一个小故事&#xff0c;公元940-985年&#xff0c;哈洛德布美塔特(Harald Blatand)&#xff0c;后人称Harald Bluetooth&#xff0c;统一了整个丹麦。他的名字“Blatand”可能取自两个古老的丹麦词语。“bla”意思是黑皮肤的&#xff0c;而“tan…

基于SSM的小区疫情防控管理系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;采用JSP技术开发 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#x…

东风新能源电动汽车E60/E70在驾培驾考领域的CAN数据应用

最近几年&#xff0c;我国驾培行业新增学员数量保持了三年的持续下降&#xff0c;与此同时&#xff0c;教学车辆和驾驶培训机构数量则在持续上升&#xff0c;由此可见驾培市场呈现出不平衡的状态&#xff0c;供大于求已经成为常态。 现在的年轻人&#xff0c;并不把开车作为职…

Elucidating the Design Space of Diffusion-Based Generative Models 阅读笔记

文章使用模块化&#xff08;modular&#xff09;的思想&#xff0c;分别从采样、训练、score network设计三个方面分析和改进diffusion-based models。 之前的工作1已经把diffusion-based models统一到SDE或者ODE框架下了&#xff0c;这篇文章的作者同样也从SDE和ODE的角度出发…

NewStarCTF2023week2-base!(base低位隐写)

附件内容是很多的base64编码的字符串 常见的Base64隐写一般会给一个txt文本文档&#xff0c;内含多个经过base64编码的字符串。解码规则是将所有被修改过的base64字符串结尾的二进制值提取出来组成一个二进制串&#xff0c;以8位分割并转为十进制值&#xff0c;最终十进制对应的…

scitb5函数1.7版本(交互效应函数P for interaction)发布----用于一键生成交互效应表、森林图

在SCI文章中&#xff0c;交互效应表格&#xff08;通常是表五&#xff09;能为文章锦上添花&#xff0c;增加文章的信服力&#xff0c;增加结果的可信程度&#xff0c;还能进行数据挖掘。 交互效应表我在既往文章《R语言手把手教你制作一个交互效应表》已经介绍怎么制作了&…