ASP.NET 위 챗 공식 번호 보기 팬 정보 인터페이스
위 챗 Token 실체 클래스:
/// <summary>
/// Token
/// </summary>
public class WeChatTokenEntity
{
public string Access_token { get; set; }
public string Expires_in { get; set; }
}
사용자 정보 실체 클래스
/// <summary>
///
/// </summary>
public class WeChatUserEntity
{
public string Subscribe { get; set; }
public string Openid { get; set; }
public string Nickname { get; set; }
public string Sex { get; set; }
public string City { get; set; }
public string Province { get; set; }
public string Country { get; set; }
public string HeadImgUrl { get; set; }
public string Subscribe_time { get; set; }
public string Language { get; set; }
}
위 챗 보조 조작 클래스
public class WeChatDemo
{
/*
* :
* 1. appid secret url, token
* 2. access_token openid ( )
* 3. access_token media_id
*
*/
string appId = "wxxxxxxxxxxxxxx";
string appSecret = "1234567890-==687";
string wechatUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";
public WeChatDemo()
{
}
/// <summary>
/// token
/// </summary>
/// <returns></returns>
public WeChatTokenEntity GetWechatToken()
{
// url
string tokenUrl = string.Format(wechatUrl, appId, appSecret);
WeChatTokenEntity myToken;
try
{
// WebClient
WebClient client = new WebClient();
// url
byte[] pageData = client.DownloadData(tokenUrl);
// byte
string jsonStr = Encoding.Default.GetString(pageData);
// JavaScriptSerializer json
// : System.Web.Extensions
JavaScriptSerializer jss = new JavaScriptSerializer();
// Token
myToken = jss.Deserialize<WeChatTokenEntity>(jsonStr);
}
catch (WebException ex)
{
throw ex;
}
catch (Exception ex)
{
throw ex;
}
return myToken;
}
/// <summary>
///
/// </summary>
/// <param name="accessToken"></param>
/// <param name="openId"></param>
/// <returns></returns>
public WeChatUserEntity GetUserIfo(string accessToken, string openId)
{
WeChatUserEntity wue = new WeChatUserEntity();
string url = "https://api.weixin.qq.com/cgi-bin/user/info?access_token={0}&openid={1}";
url = string.Format(url, accessToken, openId);
try
{
WebClient wc = new WebClient();
byte[] pageData = wc.DownloadData(url);
string jsonStr = Encoding.UTF8.GetString(pageData);
JavaScriptSerializer jss = new JavaScriptSerializer();
wue = jss.Deserialize<WeChatUserEntity>(jsonStr);
}
catch (WebException ex)
{
throw ex;
}
catch (Exception ex)
{
throw ex;
}
return wue;
}
public string GetVoice(string accessToken, string mediaId)
{
string voiceAddress = string.Empty;
string voiceUrl = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={0}&media_id={1}";
voiceUrl = string.Format(voiceUrl, accessToken, mediaId);
WebClient wc = new WebClient();
byte[] pageData = wc.DownloadData(voiceUrl);
string jsonStr = Encoding.UTF8.GetString(pageData);
//TODO:
voiceAddress = jsonStr;
return voiceAddress;
}
/// <summary>
///
/// </summary>
/// <param name="timeStamp"></param>
/// <returns></returns>
public DateTime TimeStamp2DateTime(string timeStamp)
{
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long time = long.Parse(timeStamp + "0000000");
TimeSpan toNow = new TimeSpan(time);
return dtStart.Add(toNow);
}
}
주 프로그램:
class Program
{
static void Main(string[] args)
{
WeChatDemo wcd = new WeChatDemo();
WeChatTokenEntity wte = wcd.GetWechatToken();
string token = wte.Access_token;
string openId = "ogNVpt52xxxxxxxxxxxxxxxxxx";
Console.WriteLine(" : access_token:
" + token + "
");
Console.WriteLine(" : ");
WeChatUserEntity user = wcd.GetUserIfo(token, openId);
Console.WriteLine("
:" + user.Nickname);
Console.WriteLine(" :" + user.Country);
Console.WriteLine(" :" + user.Province);
Console.WriteLine(" :" + user.City);
Console.WriteLine(" :" + user.Language);
Console.WriteLine(" :" + user.Sex);
Console.WriteLine("OpenId:" + user.Openid);
Console.WriteLine(" :" + user.Subscribe);
Console.WriteLine(" :" + wcd.TimeStamp2DateTime(user.Subscribe_time));
Console.WriteLine(" :" + user.HeadImgUrl);
Console.WriteLine("
: ");
string mediaId = "vwvnskvsldkvmsdlvkmdslkvmsld";
string voiceAddress = wcd.GetVoice(token, mediaId);
Console.WriteLine(" :" + voiceAddress);
Console.Read();
}
}
실행 결 과 는 그림 과 같 습 니 다.본 고 는 이미《ASP.NET 위 챗 개발 튜 토리 얼 집계》으로 정리 되 었 으 니,여러분 의 읽 기 학습 을 환영 합 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
위 챗 내 장 된 브 라 우 저 여 부 를 판단 합 니 다.자바 버 전 javascript 버 전...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.