第
.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