Struct to JsonString


type BaseRequest struct {
httpMethod string
domain string
path string
params map[string]string
formParams map[string]string service string
version string
action string
}
type LivenessRecognitionRequest struct {
*BaseRequest // 身份证号
IdCard *string `json:"IdCard,omitempty" name:"IdCard"` // 姓名。中文请使用UTF-8编码。
Name *string `json:"Name,omitempty" name:"Name"` // 用于活体检测的视频,视频的BASE64值;
// BASE64编码后的大小不超过5M,支持mp4、avi、flv格式。
VideoBase64 *string `json:"VideoBase64,omitempty" name:"VideoBase64"` // 活体检测类型,取值:LIP/ACTION/SILENT。
// LIP为数字模式,ACTION为动作模式,SILENT为静默模式,三种模式选择一种传入。
LivenessType *string `json:"LivenessType,omitempty" name:"LivenessType"` // 数字模式传参:数字验证码(1234),需先调用接口获取数字验证码;
// 动作模式传参:传动作顺序(2,1 or 1,2),需先调用接口获取动作顺序;
// 静默模式传参:空。
ValidateData *string `json:"ValidateData,omitempty" name:"ValidateData"` // 本接口不需要传递此参数。
Optional *string `json:"Optional,omitempty" name:"Optional"`
} func (r *LivenessRecognitionRequest) ToJsonString() string {
b, _ := json.Marshal(r)
return string(b)
} func (r *LivenessRecognitionRequest) FromJsonString(s string) error {
return json.Unmarshal([]byte(s), &r)
} func StringPtr(v string) *string {
return &v
} func NewLivenessRecognitionRequest() (request *LivenessRecognitionRequest) {
request = &LivenessRecognitionRequest{
BaseRequest: &tchttp.BaseRequest{},
}
request.Init().WithApiInfo("faceid", APIVersion, "LivenessRecognition")
return
} func (l *LivenessRecognitionRequest)DoLivenessCompare() {
request := NewLivenessRecognitionRequest()
request.IdCard = StringPtr(l.IdCard)
request.Name = StringPtr(l.Name)
request.VideoBase64 = StringPtr(l.VideoBase64)
request.LivenessType = StringPtr(l.LivenessType) requestData:=request.ToJsonString() //转strurct to jsonstring
err := request.FromJsonString(requestData) //转jsonstring to strurct
if err != nil {
panic(err)
}
} func LivenessCompare(ctx *gin.Context) {
fmt.Println("LivenessCompare")
l.IdCard=""
l.Name="haima"
l.VideoBase64=""
l.LivenessType="ACTION"
l.DoLivenessCompare()
}

Golang 开发常用代码片段的更多相关文章

  1. 36个Android开发常用代码片段

    //36个Android开发常用代码片段 //拨打电话 public static void call(Context context, String phoneNumber) { context.s ...

  2. Android开发常用代码片段

    拨打电话 public static void call(Context context, String phoneNumber) { context.startActivity( new Inten ...

  3. swift开发常用代码片段

    // 绑定事件 cell.privacySwitch.addTarget(self, action: #selector(RSMeSettingPrivacyViewController.switch ...

  4. C#常用代码片段备忘

    以下是从visual studio中整理出来的常用代码片段,以作备忘 快捷键: eh 用途: 类中事件实现函数模板 private void MyMethod(object sender, Event ...

  5. Vue3.0常用代码片段和开发插件

    Vue3 Snippets for Visual Studio Code Vue3 Snippets源码 Vue3 Snippets下载 This extension adds Vue3 Code S ...

  6. 56个PHP开发常用代码

    2016/02/14 6203 4    在编写代码的时候有个神奇的工具总是好的!下面这里收集了 50+ PHP 代码片段,可以帮助你开发 PHP 项目. 这些 PHP 片段对于 PHP 初学者也非常 ...

  7. iOS开发-代码片段(Code Snippets)提高开发效率

    简介 在 XCode4 引入了一个新特性,那就是“代码片段(Code Snippets)”.对于一些经常用到的代码,抽象成模板放到 Code Snippets 中,使用的时候就只需要键入快捷键就可以了 ...

  8. Jquery学习总结(1)——Jquery常用代码片段汇总

    1. 禁止右键点击 ? 1 2 3 4 5 $(document).ready(function(){     $(document).bind("contextmenu",fun ...

  9. jQuery常用代码片段

    检测IE浏览器 在进行CSS设计时,IE浏览器对开发者及设计师而言无疑是个麻烦.尽管IE6的黑暗时代已经过去,IE浏览器家族的人气亦在不断下滑,但我们仍然有必要对其进行检测.当然,以下片段亦可用于检测 ...

  10. [工作总结]jQuery在工作开发中常用代码片段集锦(1-10)

    1.jQuery,JS实现tab切换 原生JS实现 HTML代码如下: <div class="wrap"> <ul id="tag"> ...

随机推荐

  1. KingbaseES 物理备库影响主库的性能与垃圾回收

    前言 KingbaseES 物理备库有些配置可能影响到主库性能,或者反过来说主库某些配置也会影响到备库.终极原因还是heap tuple 和dead tuple放在一起导致的. 首先,原理上讲,物理备 ...

  2. C++设计模式 - 抽象工厂(Abstract Factory)

    对象创建模式 通过"对象创建" 模式绕开new,来避免对象创建(new)过程中所导致的紧耦合(依赖具体类),从而支持对象创建的稳定.它是接口抽象之后的第一步工作. 典型模式 Fac ...

  3. #单位根反演,二项式定理#LOJ 6485 LJJ 学二项式定理

    题目 \[\large\sum_{i=0}^nC(n,i)S^ia_{i\bmod 4} \] \(n\leq 10^{18},S,a\leq 10^8\) 分析 前面这一坨看起来就像是二项式定理,考 ...

  4. #dp,vector#AT2567 [ARC074C] RGB Sequence

    题目 分析 一种很正常的想法就是设\(dp[i][j][k]\), 表示前\(i\)个格子,其它两种颜色出现的位置分别为\(j,k,j>k或j=k=0(可取两种颜色)\)的方案数 那么颜色种类限 ...

  5. clang的lto特性的资料

    clang对lto的支持,如下文章介绍的清晰.易懂. ThinLTO llvm+clang 添加 LTO(Link Time Optimization) 支持 编译优化之 - 链接时优化(LTO)入门 ...

  6. 开放原子开源基金会OpenHarmony工作委员会主席侯培新寄语OpenAtom OpenHarmony分论坛

    2022开放原子全球开源峰会 OpenAtom OpenHarmony分论坛 万物互联,使能千行百业 7月27日 14:00  与您相约 OpenHarmony 工作委员会主席侯培新 寄语 OpenA ...

  7. Makefile 常用命令详解

    在软件开发中,Makefile是一种非常常用的自动化工具.Makefile文件包含了一系列规则,用于编译.打包.测试等操作,可以帮助我们自动化这些操作,提高项目的管理和编译效率.本文将介绍Makefi ...

  8. 【#HDC2022】HarmonyOS体验官活动正式开启,赶快投稿赢限量奖品吧!

      1. [活动简介] HDC 2022 于11月4日线上线下正式开启.历时一年,在无数开发者的共同努力下,我们汇聚了HarmonyOS生态的新成果.新体验.新开放能力,邀你参与到HarmonyOS的 ...

  9. AI数字人直播优势凸显,那么该如何打造AI数字人直播间?

    近年来,我们听到了很多无人直播间,数字人直播间这些名词,很多人会好奇这到底是什么意思,没人还可以直播吗?那什么是AI数字人直播? AI数字人是用真人拍摄五分钟高清视频上传到青否数字人克隆端,生成的数字 ...

  10. k8s 深入篇———— 编排[八]

    前言 简单整理一下编排. 正文 一个deployment 例子: apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployme ...