• 微信开发 获取AccessToken


    获取AccessToken的方法

    public static Access_token GetAccessToken()
    {
        string formatString = String.Format("https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}", AppId, AppSecret);
    
        Access_token res = new Access_token();
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(formatString);
        request.Method = "GET";
        request.ContentType = "text/html;charset=UTF-8";
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Stream myResponseStream = response.GetResponseStream();
        StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
        string retString = myStreamReader.ReadToEnd();
        myStreamReader.Close();
        myResponseStream.Close();
        if (retString.IndexOf("7200") > 0)
        {
            Access_token token = new Access_token();
            token = JsonHelper.ParseFromJson<Access_token>(retString);
            res.access_token = token.access_token;
            res.expires_in = token.expires_in;
        }
        return res;
    }

    Access_token类结构

    public class Access_token
    {
        public Access_token()
        {
            //  
            //TODO:用于验证Access_token是否过期实体
            //  
        }
        string _access_token;
        string _expires_in;
    
        /// <summary>  
        /// 获取到的凭证   
        /// </summary>  
        public string access_token
        {
            get { return _access_token; }
            set { _access_token = value; }
        }
    
        /// <summary>  
        /// 凭证有效时间,单位:秒  
        /// </summary>  
        public string expires_in
        {
            get { return _expires_in; }
            set { _expires_in = value; }
        }
    }

    JsonHelper.ParseFromJson方法

    /// <summary>  
    /// 将JSON对象转换为Model
    /// </summary>  
    /// <typeparam name="T"></typeparam>  
    /// <param name="szJson"></param>  
    /// <returns></returns>  
    public static T ParseFromJson<T>(string szJson)
    {
        T obj = Activator.CreateInstance<T>();
        using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson)))
        {
            DataContractJsonSerializer serializer = new DataContractJsonSerializer(obj.GetType());
            return (T)serializer.ReadObject(ms);
        }
    }
  • 相关阅读:
    Linux内核的整体框架
    Unix环境高级编程_文件和目录
    Unix环境高级编程_文件I/O
    u-boot启动的第二阶段
    linux基础之vi编辑器设置文件模板
    ARM linux开发之安装配置tftp
    STM32笔试题笔记
    linux基础之find命令常用用法
    ARM linux开发之根文件系统
    ARM linux开发之linux内核启动简介
  • 原文地址:https://www.cnblogs.com/zhyue93/p/WeiXin_GetAccess_token.html
Copyright © 2020-2023  润新知