tnblog
首页
视频
资源
登录

微信公众号Access_token获取(二)

5584人阅读 2019/12/11 19:35 总访问:50393 评论:0 收藏:0 手机
分类: 微信公众号

接口调用请求说明(可参考《微信各公众号Access_token获取(一)》)

https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

一、创建MVC空白项目,结构如下


二、打开工具中--NuGet包管理器--程序包管理控制台(选择的默认项目为:NET58.AccessToken.Tools),执行

    1)、安装Redis插件命令:Install-Package ServiceStack.Redis

    2)、安装Json反序列化插件命令:Install-Package Newtonsoft.Json -Version 12.0.1


三、于类库AccessTokenTools类中实现方法

public class AccessTokenTools

    {

        public static string GetToken()

        {

            RedisClient redisClient = new RedisClient();

            //先从缓存获取

            string token = redisClient.Get<string>("token");

            if (token != null)

                return token;


            //缓存中没有token就从外网获取

            HttpClient httpClient = new HttpClient();


            string result = httpClient.GetAsync("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=wx12c33b41dd3dec1f&secret=1a25eda57598e74014b803899a60c15c")

.Result.Content.ReadAsStringAsync().Result;


            AccessTokenDTO accessTokenDTO = JsonConvert.DeserializeObject<AccessTokenDTO>(result);


            //把token写入缓存

            //设置token过期时间和缓存过期时间同步(缓存过期快一丢丢)

            redisClient.Set<string>("token", accessTokenDTO.access_token,TimeSpan.FromSeconds(accessTokenDTO.expires_in-120));


            return accessTokenDTO.access_token;

        }

    }


四、Home控制器中执行GetToken()方法

     public ActionResult Index()

        {

            string token = AccessTokenTools.GetToken();


            return View();

        }


备注:AccessTokenDTO类

 public class AccessTokenDTO

    {

        public string access_token { get; set; }

        public int expires_in { get; set; }

    }


    

评价

微信公众号服务器配置

URL:URL是开发者用来接收微信消息和事件的接口URL。(例:http:服务器外网IP/)。Token:可由开发者任意填写,用作生成签名...

微信公众号上传图片,视频素材

一天休息,闲来无事,丈夫这是就问妻子说:“亲爱的老婆,你知道鱼为什么是哑巴吗?”,这是妻子也感到疑惑了,为什么鱼是...

微信公众号网页开发获取OpenID

如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑微信官方...

微信公众号排版的使用

你可以在线编辑,有很多的编辑器可以用,比如有[96编辑器](https://bj.96weixin.com/),[135编辑器](https://www.135editor...

微信公众号配置服务器

连接服务器基本配置URL :服务器地址Token : 验证请求是否是从微信发出(GET请求)4个参数,前台发送到后台的echostr,与...

微信公众号语音录入

页面注入如下接口开始录音接口startRecord停止录音接口 stopRecord 监听录音自动停止接口onVoiceRecordEnd播放语音接口play...

微信公众号图片素材上传

//参数:token,FromUserName,ToUserName,Time,MediaId利用mvc创建上传图片的视图:@{ //token stringtoken=ClassLibr...

.net 微信开发获取Access_token使用缓存处理token过期

获取access_token很简单,使用httpclient发起一个请求就可以了,我们使用redis做一下缓存处理publicstaticstringGetToken()...

微信各公众号Access_token获取

接口调用请求说明https请求方式:GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&amp;appid=A...

c获取百度ai平台的Access_token

代码如下:usingSystem; usingSystem.Collections.Generic; usingSystem.Net.Http; namespacecom.baidu.ai { publi...

获取字符串的长度中文占两个长度

js获取:String.prototype.gblen=function(){ varlen=0; for(vari=0;i&lt;this.length;i++){ if(this.charCodeAt(i)&gt;...

ios 键盘弹出时获取键盘高度

Objective-C实现://增加监听,当键盘出现或改变时收出消息 [[NSNotificationCenter defaultCenter] addObserver:self ...

通过url传递一个带井号()的参数并正确获取

正常情况下支持通过url是不能传递#等特殊符号的但是可以通过url编码解码解决通过url传递参数时某些特殊符号不能传递的问题n...

原生js获取单选框复选框等信息

原生js获取单选框复选框等信息vardoreg=function(){ //根据name获取用户名 varusername=document.getElementsByName(&q...

net core获取绝对路径,获取项目根目录。wwwroot所在的根目录

在net framework中获取绝对路径可以使用Server.MapPath(&quot;~&quot;)but.....在net core中并没有那个Server对象了在net c...
……
排名
47
文章
10
粉丝
10
评论
13
委托、系统委托、lamdba表达式
剑轩 : 图片是qq里边的图片需要上传过来才能显示
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术
我也想杀死伤痛,让那恩怨有始有终。