• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

微信小程序登录 .net 后端实现

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
  •  1:前端获取用户凭证code 传送请求获得openId(用户唯一标识)    

在页面的Onlaunch 方法中,调用wx.login 方法

https://developers.weixin.qq.com/miniprogram/dev/api/wx.login.html

 

 

这一步获取登录凭证,通过凭证调用本地后台接口,获取用户openId sessionKey等,本地后台的接口调用方法参考第四步

注意点:

      1:通常我们会把用户的session_key 存取到后台的session会话中,但是在微信小程序不会自动保存用户的session id, 这就需要将返回的session id 存在local storage中,当再次向后台请求时,在header 中带上 cookie , 看第二步图

      2:that.globalData.info = res.data.data.string, 将一个object 里的string 赋值给globalData.info, 这个时候info的值仍然是indefined, 而 res.data.data是一个对象,会赋值成功,这是为什么呢?参考https://developers.weixin.qq.com/miniprogram/dev/framework/view/wxs/06datatype.html

 

  • 2:前端获取用户信息并发送本地接口请求解码

 

 

 

注意点

1:当用户未授权登录时,此时不会弹框,需要跳出授权只能用<button open-type="getUserInfo"/>

2:向后台发送解码请求时,在header传 cookie, 标识是同一个会话,如图

 

 

 

  • 3:后端获取用户 session_key 和 open id(.net)

 

 

注意点

   1:如果获取成功, errcode不会返回

   2:  使用Asp.net core Session

      安装包:Microsoft.AspNetCore.Session

      在startup.cs 中进行配置,添加服务和注入session,网上有参考,不赘述

   3: 使用vs 进行build时,以管理员模式运行

   4: 微信要求服务器使用TLS1.2协议,如何在windows中升级TLS1.2

      更改注册表,网上有资源不赘述

 

  •  4:后端进行加密信息解码

 

 

.net 加密解码回顾:

 

常见的加密算法包括md5,sha1,aes,base64, 而 AES是可逆的对称加密算法

Base64是一种编码方式,就是把一串二进制转换成另外一种二进制串

用于图片存储等,即把图片转换成一种二进制码,从而计算机能打印

 

AES:

https://docs.microsoft.com/en-us/dotnet/api/system.security.cryptography.aesmanaged?redirectedfrom=MSDN&view=netframework-4.7.2

.net core session

TLS1.2

JsonConvert 反序列化时, 如果遇到特殊字符时,会报错的解决方法

参考资源

https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[微信小程序直播平台开发]___(一)介绍与流程发布时间:2022-07-18
下一篇:
微信小程序-WebSocket应用发布时间:2022-07-18
热门推荐
    热门话题
    阅读排行榜

    扫描微信二维码

    查看手机版网站

    随时了解更新最新资讯

    139-2527-9053

    在线客服(服务时间 9:00~18:00)

    在线QQ客服
    地址:深圳市南山区西丽大学城创智工业园
    电邮:jeky_zhao#qq.com
    移动电话:139-2527-9053

    Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap