zoukankan      html  css  js  c++  java
  • 微信 新浪

    //QQ URL   public ActionResult QQLocation()   {    

    var response_type = "code";    

    string state = "1";    

    string url = string.Format("https://graph.qq.com/oauth2.0/authorize?response_type={0}&client_id={1}&redirect_uri={2}&state={3}", response_type, WebTools.QQAppID, Uri.EscapeDataString("url"), state);    

    return Content("var qqloginurl = "" + url + """, "application/x-javascript");   

    }   

    //QQ 回调页面  

     public ActionResult QQLogin()   {    

    string code = string.IsNullOrEmpty(Request.QueryString["code"]) ? "" : Request.QueryString["code"];    

    if (code != "")    {     

    string url = string.Format("https://graph.qq.com/oauth2.0/token?grant_type=authorization_code&client_id={0}&client_secret={1}&code={2}&redirect_uri={3}", QQAppID, QQAppKey, code,  Uri.EscapeDataString("url"));    

     var strResult = Library.HelpsGet(url);     

    Match m = Regex.Match(strResult, @"access_token=(([d|a-zA-Z]*))");     

    if (!m.Success) {      return View();     }     

    url = string.Format("https://graph.qq.com/oauth2.0/me?access_token={0}", m.Groups[1].Value);     

    var newResult = Library.HelpsGet(url);     

    m = Regex.Match(newResult, @"""openid"":""([d|a-zA-Z]+)""");     

    if (!m.Success)     {      

    return View();     

    }   

       return View();   

    }   

    //微信URL  

     public ActionResult WxLocation()   {   

     var response_type = "code";   

     var scope = "snsapi_login";    

    string state = "1";    

    string url = string.Format("https://open.weixin.qq.com/connect/qrconnect?appid={0}&redirect_uri={1}&response_type={2}&scope={3}&state={4}#wechat_redirect", WebTools.WxAppID, "url", response_type, scope, state);    return Content("var wxloginurl = "" + url + """, "application/x-javascript"); 

      }   

    //微信 回调页面  

     public ActionResult WeixinLogin()   {    

    string code = string.IsNullOrEmpty(Request.QueryString["code"]) ? "" : Request.QueryString["code"];    

    if (code != "")    {  

       string url = string.Format("https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code", WebTools.WxAppID, WebTools.WxAppSecret, code);    

     var strResult = JsonConvert.DeserializeAnonymousType(Library.HelpsGet(url), new     {      access_token = string.Empty,      expires_in = 0,      refresh_token = string.Empty,      openid = string.Empty,      scope = string.Empty     });    

     url = string.Format("https://api.weixin.qq.com/sns/userinfo?access_token={0}&openid={1}&lang=zh_CN", strResult.access_token, strResult.openid);    

     var newResult = JsonConvert.DeserializeAnonymousType(Library.HelpsGet(url), new     {   

       openid = string.Empty,      nickname = string.Empty,      sex = 0,      province = string.Empty,      city = string.Empty,      country = string.Empty,      headimgurl = string.Empty,      privilege = new JArray(),      unionid = string.Empty    

     });     

      return View();  

  • 相关阅读:
    检查宿舍卫生
    代码优化中 主窗口 问题 解决
    授权 存储
    升级Xcode7&iOS9后,出现NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -980X)
    控制器里面添加控制器
    版本新特性
    ios图片适配问题
    启动图片调整
    luogu_1896【题解】状压DP
    luogu_2602【题解】数位DP 数字计数
  • 原文地址:https://www.cnblogs.com/cunfu/p/5146160.html
Copyright © 2011-2022 走看看