讓小程序用上「指紋識別」,只需這 3 個介面
在8 月 18 日的小程序新能力更新中,微信團隊為小程序增加了生物識別(包括指紋識別)的能力。
最初,小程序文檔中只有具體介面調用方法,並沒有給出小程序中調用指紋識別的最佳實踐。
現在,官方文檔終於為開發者提供了指紋識別的正確方法,同時提供了一個介面,供開發者鑒別相應信息是否正確。
下面,知曉程序(微信號 zxcx0101)將根據官方文檔,教大家如何正確地在小程序中,調用指紋識別。
如何在小程序里,使用指紋識別能力?
在小程序中,微信為指紋識別提供了兩個介面:
根據兩個介面的名字,我們可以知道:前者用於檢查當前設備是否支持生物識別,後者則是實際調用指紋識別的介面。
那麼,整個調用過程的邏輯就很簡單了:先檢測當前設備和微信版本是否支持指紋識別,如果支持,則調用指紋識別進行鑒權。
1. 如何檢測是否可以調用指紋識別?
利用 介面和 介面,我們可以檢測小程序在當前設備上,是否可以使用指紋識別。
具體代碼如下:
我們從調試台中,可以看到調用結果含有 參數,裡面包裹一個數組。
官方文檔的說法是,如果supportMode數組中包含有,那麼就代表當前設備可以使用指紋識別功能。
根據以上信息,我們來改寫一下代碼。
需要注意的是,如果用戶的設備不支持指紋驗證,你應該為用戶提供替代驗證方式。
2. 如何調用指紋識別?
確認小程序可以使用指紋識別之後,我們就可以進入正式的介面調用環節了。
示例的代碼如下:
在這個介面中,有這些參數:
:允許的生物鑒權方式,以數組的形式呈現。需要指紋識別,只需填入 。
:官方稱為「挑戰因子」,可以將請求特徵碼(訂單號、請求編號等)放入,確認用戶的是授權哪一個請求。
:在指紋識別的對話框中,向用戶顯示的提示信息。
將兩個介面合併起來用,最終我們的代碼效果如下:
最後我們試著運行一下。看到這樣的提示,說明我們的調用成功了:
如何鑒別指紋信息的真實性?
如果你的小程序沒有非常嚴格的安全要求(例如,數據存儲在本地的日記本小程序等),到這一步已經可以結束了。
但如果你的小程序需要更強的安全性(例如金融交易類的小程序),你還要確認指紋信息的真實性,以防有人以偽造數據的方式,破解指紋驗證。
調用 介面後,微信會向小程序返回指紋識別數據。開發者需要根據這些數據,進行進一步的驗證。
1. 介面會返回什麼信息?
調用 介面所返回的數據示例如下:
小程序文檔中,已經給這些參數的具體含義做出解釋。
需要注意的是,返回值里的這個參數,本身是被轉換成字元串的JSON對象。開發者如果需要獲取裡面的內容,需要用 來解析。
具體參數如下:
2. 如何鑒定指紋識別信息真實性?
微信官方已經放出了鑒定指紋信息的流程圖,我們可以大致了解到具體的鑒定方法。
這裡我們需要提到的是「非同步調用微信官方後台驗證介面」這一步驟。在文檔中,微信團隊已經提供一個供驗證指紋信息的介面。
它的調用地址是 (嗯,它甚至沒有使用 HTTPS……),需要使用 POST 方式傳入具體參數。
對於具體參數,文檔出只給出了這樣一行:
官方並沒有給出參數具體意義。據知曉程序(微信號 zxcx0101)猜測,這些參數具體含義應該是:
但據知曉程序測試,如果直接調用,會出現的錯誤,並提示 API 未授權,目前不知道哪些小程序可以使用這個介面驗證指紋信息。
有興趣的同學可以自行嘗試,並將結果告訴我們。
我們也希望微信官方可以繼續完善這個介面(和文檔),讓開發者更方便地利用指紋介面,開發出具有高安全性和體驗良好的小程序。
關注「知曉程序」公眾號
點擊展開全文
※單身究竟有多好?這 4 款小程序,讓你再也不想談戀愛
※教你為小程序起個好名字
※這款精美的壁紙 App,終於被他做成小程序了
※一人飲酒醉?這個微信官方小程序,來給你安慰
※這 5 個功能,教你在朋友圈優雅地裝 X!
TAG:知曉程序 |
※拍照即可識別花,並知道花名,這個小程序不要錯過
※我們做了一個小程序
※用這款小程序,你能看完所有的知乎熱點
※未來每個商戶,可能都必須擁有一個小程序
※抖音也做小程序,那可是個金礦
※幾個非常實用小程序推薦,應該有你用得上的吧!
※如果給你的項目做一個小程序,應該長什麼樣?
※試用上百個小程序後,我們精挑細選了20個…
※用上這款辣眼丑圖小程序,保證讓你過目不忘
※用上這款丑圖小程序,斗圖還沒輸過
※一款無需安裝的小程序,給你帶來17個實用工具
※小程序上線後,還應該思考這幾個問題
※幾個有趣的小程序、小應用
※這幾個超實用的小程序,應該能幫你不少忙!
※使用小程序不要隨便點允許,小心它們在偷窺你的個人信息
※好用到哭,推薦給你8個實用小程序
※打造用戶喜愛的小程序,需要考慮這個問題
※想要用小程序粘住用戶?用上這幾招,讓他們「走了還來」!
※手機里必備的5個小程序,今天推薦給你,都特別實用
※小程序可以接廣告了!先定一個小目標,比方說一個億?