微信公眾號人臉核身接口接入指南(調用微信人臉識別驗證api)

2021-01-19 JavaZYX


前篇寫過項目中接入支付寶身份驗證接口,用於web網頁端的文章。我們這個項目又需要做微信公眾號,支付寶的接口自然是無法使用了,然後就查找微信有沒有這種接口。很多有這種需求的小夥伴,肯定也跟我一樣,知道有這個接口,但是找不到文檔、不知道是否適用公眾號、不知道如何申請。所以,就將我如何申請的供需要的人查閱。

ps:項目移動端是微信公眾號,不是微信小程序

一 明確目標

微信是提供了人臉識別驗證接口的,該接口目前是免費的,並且是適用公眾號的。由於該接口屬於未開放接口,所以在微信JS-SDK說明文檔是無法查看到該接口文檔的,需要寫郵件給騰訊進行申請審核,如果申請通過,騰訊會回覆郵件,開通對應公眾號的調用權限,並會發送接口文檔。

二 申請流程

想必有此需求的小夥伴都找到過該文檔:微信人臉核身接口能力,請忽略這裡面的小程序字樣,也就是說,該文檔同樣適用於微信公眾號,很多人看到都以為是小程序的申請方法,其實公眾號也是這樣申請的,只不過你發郵件申請通過後,給你的文檔裡的接口是requestWxFacePictureVerify

首先,你的公眾號或小程序的主體類目要滿足上面文檔所要求的類目,然後就是發送郵件到騰訊工作郵箱了wx_city@tencent.com。郵件內容就是上面文檔所要求的表格內容。這是我申請的郵件:


騰訊的工作效率還是非常快的,一個小時就回復了郵件,這是騰訊的回覆郵件:


這是附件:

由於文檔中有內部文檔禁止外傳 字樣,這裡就不方便展示文檔內容了。如有需要,請發送郵件至騰訊申請。

拿到文檔,根據文檔開發就可以了。這個接口的調用還是非常簡單的,對於做公眾號開發的同學來說,應該是小case。

三 代碼

首先後端生成微信籤名:

@Value("${weChat.appId}")private String appId;
@Value("${weChat.appSecret}")private String appSecret;
@Autowiredprivate RedisCache redisCache;

@Overridepublic Map<String, Object> generateWxSignature(String url) { Map<String, Object> wxconfigMap = new HashMap<>(); String accessToken = redisCache.getCacheObject(Constants.ACCESS_TOKEN); String ticket = redisCache.getCacheObject(Constants.JSAPI_TIKET); if (StrUtil.isBlank(accessToken) || StrUtil.isBlank(ticket)) { String tokenUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + appId + "&secret=" + appSecret;        String tokenStr = HttpUtil.get(tokenUrl);  JSONObject tokenJson = JSONObject.parseObject(tokenStr); accessToken = tokenJson.getString("access_token"); if (StrUtil.isNotBlank(accessToken)) { String ticketUrl = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=" + accessToken + "&type=jsapi"; String ticketStr = HttpUtil.get(ticketUrl); JSONObject ticketJson = JSONObject.parseObject(ticketStr); ticket = ticketJson.getString("ticket"); if (StrUtil.isNotBlank(ticket)) { int tokenExpires = Integer.parseInt(tokenJson.getString("expires_in")) - 60; int ticketExpires = Integer.parseInt(ticketJson.getString("expires_in")) - 60;                 redisCache.setCacheObject(Constants.ACCESS_TOKEN, accessToken, tokenExpires, TimeUnit.SECONDS); redisCache.setCacheObject(Constants.JSAPI_TIKET, ticket, ticketExpires, TimeUnit.SECONDS); } } }
if (StrUtil.isBlank(accessToken)) { throw new CustomException("獲取微信access_token失敗,請重試"); }
String noncestr = RandomUtil.randomString("abcdefj1234567890OPQRSTUVWXYZ", 8); long timestamp = System.currentTimeMillis(); String dataStr = "jsapi_ticket=" + ticket + "&noncestr=" + noncestr + "&timestamp=" + timestamp + "&url=" + url; String signature = SecureUtil.sha1(dataStr);     wxconfigMap.put("signature", signature); wxconfigMap.put("noncestr", noncestr); wxconfigMap.put("timestamp", timestamp); wxconfigMap.put("appId", appId);
return wxconfigMap;}

公眾號h5要先調用 wx.config

import wx from 'weixin-js-sdk'import { generateSignature } from '@/api/appointment'
export function wxConfig(url) {    generateSignature(url).then(res => { if (res.code == 200) { wx.config({ beta: true, debug: true, appId: res.data.appId, timestamp: res.data.timestamp, nonceStr: res.data.noncestr, signature: res.data.signature, jsApiList: ['requestWxFacePictureVerify'] }) } })}

公眾號h5調用人臉識別接口:

import wx from 'weixin-js-sdk'import { wxConfig} from '@/utils/wechatPlugin'
const url = window.location.href.split('#')[0]wxConfig(url)wx.ready(function() { wx.invoke( 'requestWxFacePictureVerify', { request_verify_pre_info: '{"name":"' + name + '","id_card_number":"' + idCardNumber + '"}', check_alive_type: '1' }, function(res) { if (res.err_code == 0) {                  } else { Toast.fail('實名認證失敗') } } )})


相關焦點

  • 售樓部有人臉識別,精準識別賣高價!無奈帶頭盔看房
    據寧波晚報,該樓盤售樓處相關負責人表示,是因為宋先生的「老帶新」返利優惠的審批沒有通過,「我們規定業主來售樓處之前,要在公眾號上進行『老帶新』備案,並且備案一個小時後來售樓處才能算數,這位業主當時備案不到一個小時就到售樓處了,我們售樓處都有人臉識別的,所以審批沒通過。」為何售樓處要使用人臉識別?
  • 人臉賽道又添新選手!易鎖攜魔晶系列來襲,專注高端3D人臉識別智能鎖
    大數據表明,今年雙11期間,京東平臺人臉識別智能鎖銷量同比增加了230%,人臉識別智能鎖的市場正逐漸打開。 魔晶智能鎖涵蓋7大解鎖方式,分別是3D人臉識別解鎖、指紋解鎖、密碼解鎖、刷卡解鎖、手機遠程解鎖、臨時密碼、鑰匙解鎖,其中最亮眼的功能,就是3D人臉識別解鎖。
  • ...連續打卡0元購機」中途被要求「人臉識別」 是送實惠還是設圈套?
    然而,不少堅持打卡100多天的消費者反映,最近在打卡後被商家要求進行人臉識別,如果不同意,將無法繼續打卡。消費者質疑商家過度採集用戶個人信息。據消費者反映,在電商平臺上承辦這一活動的是北京智眾互動網絡科技有限公司。在參與打卡活動的過程中,這家公司以安全智能認證為由,獲取消費者個人信息。
  • 人臉識別技術原理與工程實踐(10個月人臉識別領域實戰總結)
    1人臉識別應用場景(驗證)我們先來看看人臉識別的幾個應用。第一個是蘋果的FACE ID,自從蘋果推出FaceID後,業界對人臉識別的應用好像信心大增,各種人臉識別的應用從此開始「野蠻生長」。事實上,人臉識別技術在很多場景的應用確實可以提升認證效率,同時提升用戶體驗。
  • 關於騰訊遊戲人臉識別驗證,你是否有很多問號?
    上周,騰訊遊戲對外宣布未成年人保護工作進入全新的3.0階段,正式升級相關保護措施:擴大人臉識別技術在遊戲裡的應用範圍,專門針對「孩子冒用家長身份信息繞過監管」的問題,強化技術手段對疑似未成年人用戶進行甄別。
  • 海南瓊州海峽輪渡上線「人臉識別」驗票
    圖為旅客在海口新海港進行人臉識別驗票。 洪堅鵬 攝19日,海南海口新海港、秀英港正式上線「旅客人臉識別自助驗票系統」及「電子船票售驗票系統」,以方便旅客購買過海船票,提高港口售票、驗票效率。圖為旅客在海口新海港進行人臉識別驗票。
  • 今天起,永嘉交通違法處理將實行「人臉識別」+「三證合一」
    小編從縣交警部門獲悉,7月1日起,我縣交通違法處理窗口將統一啟用人臉識別功能,違法處理人須攜帶「身份證、駕駛證、行駛證」三證,在窗口審核通過後,才可繼續辦理車輛違法處理業務,缺一證不可辦理,同時異地牌照異地違章也可在本地處理。
  • 人臉識別中的人臉表情識別技術
    隨著人臉識別技術的發展,如今在識別中應用到對人臉的表情進行識別,可以應用在人機互動、安全、機器人製造、醫療、通信和汽車領域等。那麼,暢視智能來告訴人臉識別技術的人臉表情識別要如何進行?圖像獲取:通過人臉識別攝像頭等圖像捕捉工具獲取靜態人臉圖像或動態圖像序列。
  • 人臉數據5毛一份, 誰在出賣我們的信息?
    一位賣家用微信語音對記者說。他還發來兩套手持身份證的人臉照片截圖。 「新華視點」記者近日調查發現,一些網絡黑產從業者利用電商平臺,批量倒賣非法獲取的人臉等身份信息和「照片活化」網絡工具及教程。專家提醒,這些人臉信息有可能被用於虛假註冊、電信網絡詐騙等違法犯罪活動。
  • 表情包AI生成器:識別人臉情緒,自動配文字
    表情包AI生成器:識別人臉情緒,自動配文字 2020-10-08 07:26 來源:澎湃新聞·澎湃號·湃客
  • 硬體廠商揭秘:如何簡單、低成本打造人臉識別產品
    AI測溫公交、人臉識別健康防疫一體機、智能測溫門禁、人臉識別智慧垃圾桶、刷臉考勤、無感刷臉通道……近幾年AI正以驚人的速度在各個行業中開展應用,"行業+AI"儼然成為了產業變革新趨勢。然而人臉識別技術開發成本高、部署難度大,這讓不少企業望而卻步。
  • 怎樣用3分鐘搭建 Python 人臉識別系統
    Face Recognition 使用的是 C++ 開源庫 dlib 通過深度學習模型構建的先進人臉識別系統,可通過 Python 接口或命令行工具對圖片中的人臉進行識別。在 Labeled Faces in the Wild 人臉數據集中進行測試,準確率高達99.38%。可以使用 Face Recognition 快速搭建人臉識別系統。  安裝  使用 pip 命令安裝 face_recognition 軟體包,官方支持 Mac 和 Linux 系統,另外也支持在樹莓派上安裝。
  • 讓服務創造價值,2021微信公開課PRO服務商專場線上開講
    而即將上線的小程序商戶號同步註冊方案,則能幫助服務商在給商家提供交易類小程序時擁有更高效、更便捷的註冊流程。結合試用小程序,在決策購買後可實現一次進件及認證,並創建APPID或商戶號,然後完成自動綁定和正式發布。「為了配合服務商在線上趨勢下更好地滿足行業和用戶需求,微信開放平臺在2020年做了大量工作支持服務商能力提升,總結起來就是:助力、增效與開放。」
  • 在微信上開店:微信小店上線公眾平臺
    前天,微信在部分用戶的 「發現」 界面添加了 「購物」 入口,將京東商城置於一級入口位置,這是微信在電商領域發力的重要舉措。此前,微信已在 「我的銀行卡」 界面接入了 1 號店、大眾點評。而今天,微信進一步向電商領域滲透。微信公眾平臺進行了更新並增加了微信小店功能。已接入微信支付的公眾號,可在服務中心中申請開通微信小店功能。
  • 微信推新版公眾平臺 自帶語音識別可獲取地理位置
    昨日,微信發布了新版公眾平臺,開放多個高級技術接口、規定服務號須進行微信認證成為兩大亮點。此外,微信還向服務號開發者開放了部分高級權限,微信商業化布局的「七巧板」正在一塊塊拼上。   微信一秒可變「智能客服」   「復興門百盛。」對著微信路況服務號說出這個短語後,劉先生手機上的對話框中出現「正在識別中,請稍等。」約兩秒鐘後,一張花花綠綠、詳細標註著復興門百盛附近各路段實時路況的圖片就發送到了他的手機上。
  • 繼LFW之後,騰訊優圖又在難度更大的人臉識別庫MegaFace中獲得全球...
    雷鋒網(公眾號:雷鋒網)按:近日,騰訊優圖實驗室在國際知名人臉識別資料庫MegaFace中,以83.290%的成績在100萬級別人臉識別測試(Challenge1/FaceScrub identification)中取得第一,參加此次比賽的還有Google, 百度等公司的AI團隊。
  • 微信公眾號吸粉工具哪個好?
    微信公眾號作為企業重要的宣傳渠道,閱讀量和粉絲數成了公眾號的關鍵數據,其中吸引用戶關注是最難的,除去從內容方面提升之外,還可以借用一些微信公眾號吸粉工具,那麼微信公眾號吸粉工具哪個好?具體怎麼實現 微信公眾號作為企業重要的宣傳渠道,閱讀量和粉絲數成了公眾號的關鍵數據,其中吸引用戶關注是最難的,除去從內容方面提升之外,還可以借用一些微信公眾號吸粉工具,那麼微信公眾號吸粉工具哪個好?具體怎麼實現吸粉呢?小編今天就給大家分享一下。
  • 人臉識別,智能安防中的「超級警察」
    伴隨著人工智慧的發展,人臉識別技術的認知度也隨之提高,從18年歌神張學友演唱會的抓捕逃犯到前不久林俊傑為了打擊黃牛設置演唱會門票購買需進行人臉識別驗證,就算你不想了解,人臉識別也已經在無數次回眸中,與你確認過眼神,肯定你就是對的人了。
  • 要臉還是要安全——人臉識別烯烴
    人臉識別,是基於人的臉部特徵信息進行身份識別的一種生物識別技術。用攝像機或攝像頭採集含有人臉的圖像或視頻流,並自動在圖像中檢測和跟蹤人臉,進而對檢測到的人臉進行臉部識別的一系列相關技術,通常也叫做人像識別、面部識別。