Appearance
e签宝实现电子签名
一般的合同相关的都需要签名,但有些时候合作的人可能相隔几百公里,这时候纸质合同的签名就比较麻烦了,e签宝就可以实现电子签名,电子签名同样有法律效力的,而e 签宝会通过数字证书、时间戳等技术手段,将签署人信息、签署时间、原文内容等关键信息进行加密固化,防止任何一方篡改。
需要在 e 签宝官网注册一个开发者账号,并完成企业认证。
在 e 签宝开放平台创建一个应用,获取之后调用 API 所需的 App Key 和 Secret Key。
1.在小程序后台配置e签宝的域名,否则无法在小程序中加载 e 签宝的 h5 页面
2.使用 <web-view> 加载后端返回的 e 签宝 h5 签署页面链接。传递签署链接时,需要使用 encodeURIComponent 对 URL 进行编码,防止链接被截断。可以在 <web-view> 上绑定 @message 事件,来监听 5 页面返回的消息,来判断用户是否完成了签署。
3.如果签署过程中需要人脸识别,e 签宝的 h5 页面会跳转到“e签宝上链公证签”小程序进行刷脸认证,认证完成后会自动跳回小程序。
4.用户完成签署后,e 签宝会向后端配置的回调地址发送通知,你的后端服务接收到通知后,可以更新贷款合同的状态。
vue
<template>
<view>
<web-view :src="esignUrl"></web-view>
</view>
</template>
<script>
export default {
data() {
return {
esignUrl: ''
};
},
onLoad(options) {
// 从后端获取经过 encodeURIComponent 编码的 e 签宝签署链接
this.getEsignUrl();
},
methods: {
getEsignUrl() {
uni.request({
url: 'https://your-backend-api/get-esign-url',
method: 'GET',
success: (res) => {
this.esignUrl = decodeURIComponent(res.data.url);
}
});
}
}
};
</script><template>
<view>
<web-view :src="esignUrl"></web-view>
</view>
</template>
<script>
export default {
data() {
return {
esignUrl: ''
};
},
onLoad(options) {
// 从后端获取经过 encodeURIComponent 编码的 e 签宝签署链接
this.getEsignUrl();
},
methods: {
getEsignUrl() {
uni.request({
url: 'https://your-backend-api/get-esign-url',
method: 'GET',
success: (res) => {
this.esignUrl = decodeURIComponent(res.data.url);
}
});
}
}
};
</script>
小洛的前端技术博客