App_Code/WeiXinPage.cs
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Newtonsoft.Json;
/// <summary>
/// WeiXin 的摘要说明
/// </summary>
public abstract class WeiXinPage : System.Web.UI.Page, System.Web.SessionState.IRequiresSessionState
{
protected sealed override void OnPreInit(EventArgs e)
{
if (isGuest)
{
getWxUser();
}
base.OnPreInit(e);
}
/// <summary>
/// 是否访客身份 true:是 false:否
/// </summary>
public static bool isGuest
{
get
{
return HttpContext.Current.Session[_user] == null ? true : false;
}
}
private static string _user { get { return "$wxuser"; } }
private static string _code { get { return "$wxcode"; } }
private static string _AbsoluteUri { get { return HttpContext.Current.Request.Url.AbsoluteUri; } }
/// <summary>
/// 该路径剔除微信Query的URL用于页面重定向获取最新的用户信息
/// </summary>
private static string _RawUrl
{
get
{
string url = HttpContext.Current.Request.Url.AbsoluteUri;
url = url.Replace(url.Substring(url.IndexOf("code"), url.IndexOf("STATE") + 5 - url.IndexOf("code")), "");
return url;
}
}
/// <summary>
/// 获取微信用户信息
/// </summary>
private static Dictionary<string, object> getWxUser()
{
string code = HttpContext.Current.Request.QueryString.Get("code") ?? "",
url = "",
ret = "";
try
{
object user = HttpContext.Current.Session[_user];
if (code.Length == 0 && user == null)
{
JumpUrl();
return null;
}
后面还有 57 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。