zoukankan      html  css  js  c++  java
  • 微信开发 获取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);
        }
    }
  • 相关阅读:
    怎样打开64位 Ubuntu 的32位支持功能?
    HDOJ 1312题Red and Black
    课程设计,文件加密
    一首诗的代码
    HDOJ1021题 Fibonacci Again 应用求模公式
    HDOJ 1013题Digital Roots 大数,9余数定理
    codevs 3314 魔法森林
    codevs 1144 守望者的逃离
    Wormholes
    codevs 1507 酒厂选址
  • 原文地址:https://www.cnblogs.com/zhyue93/p/WeiXin_GetAccess_token.html
Copyright © 2011-2022 走看看