QiFeng.ZWY.Bll/WxInterfaceFunc/WxInterUserFunc.cs
(开头部分) 13KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using log4net;
using QiFeng.LMSD.Model.WeChat;
using QiFeng.LMSD.Utility;
using Newtonsoft.Json;
using QiFeng.LMSD.Model.Wechat;
namespace QiFeng.LMSD.Bll.WxInterfaceFunc
{
public class WxInterUserFunc : BaseWxInterFunc
{
private readonly ILog _fileLog = LogManager.GetLogger(typeof(WxInterUserFunc));
#region 微信获取用户信息(含UNION机制)
/// <summary>
/// 微信获取用户信息(含UNION机制)
/// </summary>
/// <param name="appId"></param>
/// <param name="accessToken"></param>
/// <param name="openId"></param>
/// <param name="appSecret"></param>
/// <param name="tokenKey"></param>
/// <returns></returns>
public WxUserInfo GetUserInfoIncludeUnion(string accessToken, string openId, string appId, string appSecret,
string tokenKey)
{
try
{
var lsOpenIds = new List<string> { openId };
var lsUserInfo = BatchGetUserInfoFromUnion(accessToken, lsOpenIds);
if (lsUserInfo == null || lsUserInfo.Count == 0)
{
throw new WxErrorMsgException("The result value of interface is empty",
WxErrorMsgExceptionType.WxErrorException);
}
return lsUserInfo[0];
}
catch (WxErrorMsgException ex)
{
_fileLog.Error("WxInterUserFunc | GetUserInfoIncludeUnion | " + ex);
var strJson = ex.Message;
if (strJson.Contains("\"errcode\":") && strJson.Contains("\"errmsg\":"))
{
if (strJson.Contains("45009") || strJson.Contains("40001") || strJson.Contains("40014") ||
strJson.Contains("42001"))
{
accessToken = GetWxToken(appId, appSecret, true, tokenKey);
return GetUserInfoFromUnion(accessToken, openId);
}
}
}
catch (Exception ex)
{
throw new WxErrorMsgException("WxInterUserFunc | GetUserInfoIncludeUnion | Cannot get user info from union way " + ex.Message,
WxErrorMsgExceptionType.WxErrorException);
}
后面还有 267 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。