1. 程式人生 > >微信小程式登入資料解密以及狀態維持

微信小程式登入資料解密以及狀態維持

說明:本文沒有找到原文地址 
學習過小程式的朋友應該知道,在小程式中是不支援cookie的,藉助小程式中的快取我們也可以儲存一些資訊,但是對於一些比較重要的資訊,我們需要通過登入狀態維持來儲存,同時,為了安全起見,使用者的敏感資訊,也是需要加密在網路上傳輸的。

前臺,service。封裝了http請求,同時封裝了getSession(通過code獲取伺服器生成的session)、getUserInfo(獲取使用者資訊)、getDecryptionData(解密資料)

  1. //service.js
  2. //封裝了http服務,getUserInfo,提供回撥函式
  3. var recourse ={
  4. doMain:"http://www.domain.com/"
  5. }
  6. module.exports ={
  7. //Http Get
  8. requestGet:function(url, data, cb){
  9. wx.request({
  10. url: recourse.doMain + url,
  11. data: data,
  12. method:'GET',
  13. header:{},
  14. success:function(res){
  15. cb(res,true)
  16. },
  17. fail:function(){
  18. cb(data,false)
  19. }
  20. })
  21. },
  22. //Http POST
  23. requestPost:function(url, data, cb){
  24. wx.request({
  25. url: recourse.doMain + url,
  26. data: data,
  27. method:'POST',
  28. header:{},
  29. success:function(res){
  30. cb(res,true)
  31. },
  32. fail:function(){
  33. cb(data,false)
  34. }
  35. })
  36. },
  37. //獲取第三方sessionId
  38. getSession:function(code, cb){
  39. wx.request({
  40. url: recourse.doMain +'SmallRoutine/PostCode',
  41. data:{ code: code },
  42. method:'POST',
  43. success:function(res){
  44. cb(res,true)
  45. },
  46. fail:function(res){
  47. cb(res,false)
  48. }
  49. })
  50. },
  51. //獲取使用者資訊
  52. getUserInfo:function(cb){
  53. wx.getUserInfo({
  54. success:function(res){
  55. cb(res,true)
  56. },
  57. fail:function(res){
  58. cb(res,false)
  59. }
  60. })
  61. },
  62. //獲取解密資料
  63. getDecryptionData:function(cb){
  64. wx.request({
  65. url: recourse.doMain+'SmallRoutine/Decryption',
  66. data:{
  67. encryptedData: wx.getStorageSync('encryptedData'),
  68. iv: wx.getStorageSync('iv'),
  69. session: wx.getStorageSync('thirdSessionId'),
  70. },
  71. method:'POST',
  72. success:function(res){
  73. cb(res,true)
  74. },
  75. fail:function(res){
  76. cb(res,false)
  77. }
  78. })
  79. }
  80. }

後臺,根據code獲取session,客戶端用來保持登入狀態

  1. [HttpPost]
  2. publicActionResultPostCode(string code)
  3. {
  4. try
  5. {
  6. if(!string.IsNullOrEmpty(code))
  7. {
  8. HttpWebRequest request =(HttpWebRequest)HttpWebRequest.Create(string.Format

    相關推薦

    程式登入資料解密以及狀態維持

    說明:本文沒有找到原文地址  學習過小程式的朋友應該知道,在小程式中是不支援cookie的,藉助小程式中的快取我們也可以儲存一些資訊,但是對於一些比較重要的資訊,我們需要通過登入狀態維持來儲存,同時,為了安全起見,使用者的敏感資訊,也是需要加密在網路上傳輸的。 前臺,service。封裝了ht

    程式開放資料解密 AES-128-CBC 解密(Java版本)

    最近朋友在弄微信小程式開發,需要跟微信服務端互動,微信敏感資料都有加密返回,需要在服務端接收進行解密後再返回給客戶端小程式,今天就通過Java進行資料的解密,以下展示是Java程式碼如果你使用的C#,請訪問這個地址(C#版本) https://blog.csdn.net/jasonso

    程式開放資料解密 AES-128-CBC 解密(C#版本)

    最近朋友在弄微信小程式開發,需要跟微信服務端互動,微信敏感資料都有加密返回,需要在服務端接收進行解密後再返回給客戶端小程式,今天就通過C# 進行資料的解密,以下展示是C# 程式碼如果你使用的Java,請訪問這個地址(Java版本) https://blog.csdn

    Java之——實現程式加密資料解密演算法

    一、概述 微信推出了小程式,很多公司的客戶端應用不僅具有了APP、H5、還接入了小程式開發。但是,小程式中竟然沒有提供Java版本的加密資料解密演算法。這著實讓廣大的Java開發人員蛋疼。 我們下載的演算法示例如下: 木有Java!! 木有Java!!

    程式登入狀態java後臺解密

    一、登入流程圖 二、微信小程式端 doLogin:function(callback = () =>{}){ let that = this; wx.login({ success:function(loginRes){ if(l

    thinkphp5程式登入解密

    ==用到的方法== 1.傳送HTTP請求方法,用於獲取code。 /** * 傳送HTTP請求方法 * @param string $url 請求URL * @param array

    程式登入、獲取使用者資訊以及檢查session_key是否過期大致操作流程[開發採用wepy框架]

    基於微信小程式對於getUserInfo的調整,獲取使用者資訊改採用button實現,基於此實現的微信小程式一整套登入流程。 在整個小程式的實現中需要呼叫wx.checkSession()介面,通過該

    程式登入授權 並解決app.js中的onLaunch中的資料 在page的onLoade中接收不到的問題

    首先理一下授權登入的順序 1.使用者進入小程式有一個預設頁面 在這個預設頁面的onLoade中設定一個只有點選授權才能得到的資料 2.當用戶開啟小程式進入預設頁面 如果獲取不到這個資料就跳轉到登陸頁面 3.登入頁面只有點選授權登入之後才會生成這個資料 並跳轉到

    程式登入授權

    wxml檔案內容 <view class="container"> <view class="userinfo"> <button wx:if="{{!hasUserInfo && canIUse}}" open-type="getUserInf

    程式資料的儲存和獲取

    /儲存資料     try {       wx.setStorageSync('key',this.data.radioCheckVal2)  //key表示data中的引數

    程式登入-openid和unionid

    本文轉自https://www.cnblogs.com/yaoyuqian/p/8203792.html   我們一般都是先獲取到微信的 unionid,然後再通過 unionid 去登入自己的網站,就可以關聯到使用者在自己網站上的 user_id,但是在小程式登入中,有時候可以獲取到

    程式API 資料快取

    每個微信小程式都可以有自己的本地快取,可以通過wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以對本地快取進行設定、獲取和清理。同一個微信

    程式對於資料的區域性更新

    Data中的一個數組 this.setData({ nameArray: [{ id: 1, name: 'rob', sex: 'man', age: 16, grade: '高一' }, { id: 2, name: 'mike', sex: 'man', age: 17, grad

    解決程式登入與釋出的一些問題

    解決微信小程式的問題 圖片在電腦上顯示但在手機上卻無法顯示的問題 要使用的是本地圖片,不想把圖片上傳到網路再通過https的方式解決,解決方法如下: 1.image src中的圖片地址對英文字母大小寫敏感,必須確認大小寫對得上; 2.圖片大小問題。本地圖片要小於10KB才能順利在真機上顯示。 為什麼

    程式獲取使用者位置以及城市

    做小程式的時候,有需要維護使用者地理位置的地方,這時如果可以自動獲取當前位置,對於提升使用者體驗有很大的幫助,然後檢視官方文件,有個wx.getLocation介面,詳細說明如下: wx.getLocation(Object object) 呼叫前需要 使用者授權 

    程式開發資料

      微信開放平臺:主要面向App開發者。通常是擁有成熟的應用程式後,通過開放平臺將內容分享到朋友圈或傳送給某個微信好友/群。例如QQ音樂分享,美圖秀秀修改過的照片直接發朋友圈或聊天。 微信公眾平臺:強調資訊交流。既可以向微博一樣主要推送內容,也可以像10086一樣根據使用者發來的

    程式--登入流程梳理

    前言 微信小程式凡是需要記錄使用者資訊都需要登入,但是也有幾種不同的登入方式,但是在小程式部分的登入流程是一樣的。之前就朦朦朧朧地用之前專案的邏輯改改直接用了,這個新專案要用就又結合官方文件重新梳理了下,並記錄一下,好記性不如爛筆頭嘛,哈哈。 幾種登入流程設計 利用OpenId 建立新使用者 這種方式

    基於Shiro,JWT實現程式登入完整例子

    小程式官方流程圖如下,官方地址 : developers.weixin.qq.com/miniprogram… : 如果此圖理解不清楚的地方,也可參看我的部落格 : www.cnblogs.com/ealenxie/p/… 本文是對接微信小程式自定義登入的一個完整例子實現 ,技術棧為 :

    程式var和let以及const有什麼區別

    微信小程式var和let以及const的區別:   在JavaScript中有三種宣告變數的方式:var、let、const。  var:宣告全域性變數,換句話理解就是,宣告在for迴圈中的變數,跳出for迴圈同樣可以使用。   for(var i=0;i<

    程式 修改資料,並動態渲染頁面;修改陣列;

    一、修改資料,並在頁面動態渲染   this.setData({     txt: '12112'   }) 二、修改陣列 var rotateClassItem = 'rotateClass['+ index + ']'; t