基本信息
文件名称:.NET6使用微信小程序授权登录获取手机号.docx
文件大小:16.8 KB
总页数:4 页
更新时间:2025-06-23
总字数:约3.85千字
文档摘要

.NET6使用微信小程序授权登录获取手机号

#region获取小程序的Access_token

publicobjectGetAccess_token(stringappid,stringsecret)

stringstrUrl=/cgi-bin/tokengrant_type=client_credentialappid=+appid+secret=+secret;

HttpWebRequestreq=(HttpWebRequest)HttpWebRequest.Create(strUrl);

req.Method=GET;

req.ContentType=textml;charset=UTF-8;

HttpWebResponseresponse=(HttpWebResponse)req.GetResponse();

StreammyResponseStream=response.GetResponseStream();

StreamReadermyStreamReader=newStreamReader(myResponseStream,Encoding.UTF8);

stringjsonData=myStreamReader.ReadToEnd();

myStreamReader.Close();

myResponseStream.Close();

stringjsonSr=jsonData;

JObjectjsons=JObject.Parse(jsonSr);

stringaccesstoken=jsons[access_token].ToString();

returnaccesstoken;

#endregion

3.授权时获取手机号

#region获取微信绑定手机号

publicobjectGetPhoneNumber(stringcode,stringappid,stringsecret)

stringerrCode=;

varaccesstoken=GetAccess_token(appid,secret);

stringserviceAddress=/wxa/business/getuserphonenumberaccess_token=+accesstoken;

JObjectcodes=newJObject();

codes[code]=code;

stringsendData=JsonConvert.SerializeObject(codes);

//换成Post请求方式

stringjsonString=UrlPost(sendData,serviceAddress);

dynamicmodel=JToken.Parse(jsonString)asdynamic;

JObjectjson=JObject.Parse(jsonString);

errCode=json[errcode].ToString();

stringpurePhoneNumber=json[phone_info][phoneNumber].ToString();

//签发token

//stringtoken;

//_authenservice.IsAuthenticated(code,outtoken);

returnnew{Code=200,Msg=获取成功,Tel=purePhoneNumber,Token=token};

catch(Exceptione)

returnnew{Code=0,Msg=获取失败+e.Message};

#endregion

4.微信接口要求必须使用Post请求方法

#region提交Post请求

///summary

///提交Post请求

////summary

///paramname=parameterData参数集合/param

///paramname=serviceUrlURL/param

///paramname=ContentType/param

///paramname=Accept/par