[System.Web.Http.HttpGet]
public JsonResult<CodeMsg> GetOpenId(string Code)
{
//HttpContextBase context = (HttpContextBase)value.Properties["MS_HttpContext"];//获取传统context
//HttpRequestBase aequest = context.Request;//定义传统request对象
string AppId = ConfigurationManager.AppSettings["AppId"]; //获取数据为string类型且在appsettings[“相关key”]
string AppSc = ConfigurationManager.AppSettings["AppSc"]; //获取数据为string类型且在appsettings[“相关key”]
string code = Code;
string html = string.Empty;
string url = $"https://api.weixin.qq.com/sns/jscode2session?appid={AppId}&secret={AppSc}&js_code={code}&grant_type=authorization_code";
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
request.Method = "GET";
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Stream ioStream = response.GetResponseStream();
StreamReader sr = new StreamReader(ioStream, Encoding.UTF8);
html = sr.ReadToEnd();
sr.Close();
ioStream.Close();
response.Close();
string key = "\"openid\":\"";
string OpenId = "";
CodeMsg msg = new CodeMsg();
msg.Reson = html;
int startIndex = html.IndexOf(key);
if (startIndex != -1 )
{
//int endIndex = html.IndexOf ("\",", startIndex);
//OpenId = html.Substring(startIndex + key.Length, endIndex - startIndex - key.Length);
string jsonString = html;
JObject json = JObject.Parse(jsonString);//获取openid
OpenId = json["openid"].ToString();
}
if (!string.IsNullOrEmpty(OpenId))
{
AccontMain model = new AccontMain();
model = GetModel(OpenId);
if (model != null)
{
msg.Code = 1;
msg.Count = 1;
msg.Data = model;
}
else
{
model = new AccontMain();
msg.Code = 1;
msg.Count = 0;
model.WxId = OpenId;
msg.Data = model;
}
}
return Json<CodeMsg>(msg);
}
获取微信OpenId
最新推荐文章于 2024-09-27 11:08:37 发布