12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- <template>
- <!-- #ifdef APP -->
- <scroll-view class="page-scroll-view">
- <!-- #endif -->
- <view>
- <page-head :title="title"></page-head>
- <view class="uni-padding-wrap uni-common-mt">
- <view class="uni-btn-v uni-common-mt">
- <input class="uni-input" type="text" v-model="realName" name="real-name" placeholder="姓名" maxlength="-1" />
- </view>
- <view class="uni-btn-v uni-common-mt">
- <input class="uni-input" type="text" v-model="idCard" name="id-card" placeholder="身份证号" maxlength="-1" />
- </view>
- <view class="uni-btn-v uni-common-mt">
- <button type="primary" @click="facialRecognition">开始人脸识别</button>
- </view>
- </view>
- </view>
- <!-- #ifdef APP -->
- </scroll-view>
- <!-- #endif -->
- </template>
- <script>
- export default {
- data() {
- return {
- title: '实人认证',
- realName: '',
- idCard: ''
- }
- },
- onReady() {
- },
- methods: {
- facialRecognition() {
- const realName = this.realName.trim()
- const idCard = this.idCard.trim()
- if (realName == '' || idCard == '') {
- uni.showModal({
- title: '错误',
- content: '姓名和身份证号不可为空',
- showCancel: false
- })
- return
- }
- if('production' === process.env.NODE_ENV && '__UNI__HelloUniAppX'===uni.getAppBaseInfo().appId){
- uni.showModal({
- title: '提示',
- content: '实人认证为收费功能,当前环境暂不支持。请在HBuilderX中新建Hello uni-app x项目真机运行体验!',
- showCancel: false
- })
- return
- }
- const testFacialCo = uniCloud.importObject('facial-recognition-co')
- let metaInfo = uni.getFacialRecognitionMetaInfo();
- testFacialCo.getCertifyId({
- realName,
- idCard,
- metaInfo
- })
- .then((res : UTSJSONObject) : Promise<string> => {
- const certifyId = res['certifyId'] as string
- return new Promise((
- resolve : (res : string) => void,
- reject : (err : Error) => void
- ) => {
- uni.startFacialRecognitionVerify({
- certifyId,
- success() {
- resolve(certifyId)
- },
- fail(err) {
- reject(new Error(err.errMsg))
- }
- })
- })
- })
- .then((certifyId : string) : Promise<UTSJSONObject> => {
- return testFacialCo.getAuthResult(certifyId)
- })
- .then((res : UTSJSONObject) => {
- console.log('res', res)
- })
- .catch((err : any | null) => {
- console.error('error', err)
- })
- }
- }
- }
- </script>
- <style>
- </style>
|