首页 > 其他分享 >1、认证

1、认证

时间:2023-05-19 11:37:09浏览次数:31  
标签:openid code return 认证 result var new

1、小程序后台认证

小程序界面点击授权登录获取code,传递给后台,后台调用如下接口

public async Task<WxResult> AuthenticationAsync(string code)
        {
            var appId = ConfigurationManager.AppSettings["WeChat:Appid"];
            var appSecret = ConfigurationManager.AppSettings["WeChat:Secret"];
            var url = $"https://api.weixin.qq.com/sns/jscode2session?appid={appId}&secret={appSecret}&js_code={code}&grant_type=authorization_code"; 
            var webRequest = WebRequest.CreateHttp(url);
            webRequest.Method = "Get";
            var webResponse = (HttpWebResponse)webRequest.GetResponse();
            if (webResponse.StatusCode == HttpStatusCode.OK)
            {
                using (var stream = webResponse.GetResponseStream())
                {
                    using (var reader = new StreamReader(stream))
                    {
                        string content = await reader.ReadToEndAsync();
                        var result=JsonConvert.DeserializeObject<WxAuthenticationResultModel>(content);
                        if(string.IsNullOrEmpty(result?.openid))
                            return new WxAuthenticationFailedResult("微信接口openid为空");
                        return new WxAuthenticationSucceedResult() { OpenId = result.openid };
                    }
                }
            }
            else {
                return new WxAuthenticationFailedResult("微信接口调用失败");
            }
        }

注意:首先要有开发者权限,其次是有appid和appsecret(管理后台获得)

标签:openid,code,return,认证,result,var,new
From: https://www.cnblogs.com/GreenLeaves/p/17414379.html

相关文章

  • 【实践篇】教你玩转JWT认证---从一个优惠券聊起
    引言最近面试过程中,无意中跟候选人聊到了JWT相关的东西,也就联想到我自己关于JWT落地过的那些项目。关于JWT,可以说是分布式系统下的一个利器,我在我的很多项目实践中,认证系统的第一选择都是JWT。它的优势会让你欲罢不能,就像你领优惠券一样。大家回忆一下一个场景,如果你和你的女朋......
  • oracle认证在哪学
    随着信息时代的不断发展和进步,信息技术行业已经成为散发出巨大魅力的领域。而在这个领域中,数据库管理是其中一个重要的分支。而作为全球最大的数据库软件供应商,Oracle公司所开发出的Oracle数据库系统,在业界享有极高的声誉和重要地位。因此,学习Oracle认证对于从事或有意从事数据库......
  • c#构建具有用户认证与管理的socks5代理服务端
    Socks协议是一种代理(Proxy)协议,例如我们所熟知的Shdowsocks便是Socks协议的一个典型应用程序,Socks协议有多个版本,目前最新的版本为5,其协议标准文档为RFC1928。我们一起来使用.net7构建一个支持用户管理的高性能socks5代理服务端目录协议流程1clie......
  • 220V转12V成熟设计,做过相关认证。 两种电路。 1)6W,包含
    220V转12V成熟设计,做过相关认证。两种电路。1)6W,包含原理图和pcb,附芯片手册,包含变压器设计.2)12W,包含原理图和pcb,附BOM,变压器参数,芯片手册。备注:方案一芯片比方案二芯片价格偏低,量大可采用。ID:6710667138080270......
  • 备考Salesforce认证, 必须要了解哪些问题?
    Salesforce认证一直备受业内人士的重视,拥有值得信赖的含金量。成为Salesforce认证专家不仅表明了专业技能的熟练程度,也是对个人和专业发展的保障。不少小白或初学者对Salesforce认证可能还有诸多疑问,本篇文章整理了最基础的、最常见的一些问题,为入门者答疑解惑。Q1什么是Sales......
  • 收藏!网络行业主流的六大技术认证全科普
    大家好,我是老杨。你的年终总结做完了没?还没做完,点击“年终总结”,拿个模板,快速完成。很多人在年末都会有列一个新年愿望清单,写写来年想要完成的事情。不少网工在这两年的就业环境之下,都想着要提升自己,但只有想法,没有什么具体可以落地的方向。今日文章阅读福利:《2023网络工程师考证......
  • 5、Nginx 常见模块 auth_basic:实现账户认证功能
    Nginx账户认证功能由ngx_http_auth_basic_module模块提供此功能官方帮助:http://nginx.org/en/docs/http/ngx_http_auth_basic_module.html语法格式:Syntax: auth_basic_user_filefile;Default: —Context: http,server,location,limit_except范例:authbasic提......
  • 宝兰德应用服务器软件与华为云GaussDB完成兼容互认证
    摘要:北京宝兰德软件股份有限公司携手华为云完成宝兰德应用服务器软件9.5与GaussDB数据库兼容性测试,并获得华为云授予的技术认证书。本文分享自华为云社区《宝兰德应用服务器软件与华为云GaussDB完成兼容互认证》,作者:GaussDB数据库。近日,北京宝兰德软件股份有限公司(简称:宝兰德)携......
  • csrf跨站请求伪造、csrf相关装饰器、auth认证模块
    csrf跨站请求伪造、csrf相关装饰器、auth认证模块csrf跨站请求伪造简单来说就是攻击者通过一些技术手段欺骗用户的浏览器去访问一个自己曾经认证过的网站并执行一些操作,用于浏览器曾经认证过,所以被访问的网站会以为是真正的用户操作而去执行。经典例子钓鱼网站:假设是一个跟银......
  • elasticsearch开启密码认证
    如果是单节点,可以再elasticsearch配置文件里新增#开启安全xpack.security.enabled:true#集群节点间不互相通讯discovery.type:single-node这里不使用这种方式,还是以集群方式进行配置。集群间节点通讯通过transport方式,开启es安全后要配置TransportLayerSecurity(TLS)。......