AccessToken获取方法 .net微信开发 怎样获取AccessToken

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

AccessToken获取方法 .net微信开发 怎样获取AccessToken

zhyue93   2021-03-24 我要评论
想了解.net微信开发 怎样获取AccessToken的相关内容吗,zhyue93在本文为您仔细讲解AccessToken获取方法的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:微信,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);
  }
}

猜您喜欢

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们