General.Core/Common/OAuth/WeChat/WeChatHelper.cs
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
namespace General.Core.Common.OAuth.WeChat
{
public class WeChatHelper
{
public WeChatHelper()
{
}
/// <summary>
/// 根据AppID和AppSecret获得access token(默认过期时间为2小时)
/// </summary>
/// <returns>Dictionary</returns>
public static Dictionary<string, object> GetAccessToken()
{
//获得配置信息
//oauth_config config = oauth_helper.get_config(2);
string send_url = WeChatDefaults.AccessTokenEndpoint
+ "?appid=" + WeChatDefaults.AppId
+ "&secret=" + WeChatDefaults.AppSecret
+ "&code=CODE&grant_type=authorization_code";
//发送并接受返回值
using (HttpClient client = new HttpClient())
{
var result = client.GetStringAsync(send_url);
if (string.IsNullOrEmpty(result.Result) && (result.Result.Contains("errmsg") || result.Result.Contains("errmsg")))
{
return null;
}
try
{
Dictionary<string, object> dic = JsonConvert.DeserializeObject<Dictionary<string, object>>(result.Result);
return dic;
}
catch
{
return null;
}
}
}
/// <summary>
/// 取得临时的Access Token(默认过期时间为2小时)
/// </summary>
/// <param name="code">临时Authorization Code</param>
/// <param name="state">防止CSRF攻击,成功授权后回调时会原样带回</param>
/// <returns>Dictionary</returns>
public static Dictionary<string, object> GetAccessToken(string code, string state)
{
string send_url = WeChatDefaults.AccessTokenEndpoint
+ "?appid=" + WeChatDefaults.AppId
+ "&secret=" + WeChatDefaults.AppSecret
+ "&code=" + code
后面还有 120 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
