用QQ帐号登录:

 
然后点击验证
 

将下面代码复制到网站首页中,放进去以后再点击验证就能得到ID和key

第一步:配置web.config及引用DLL 这里Dll直接放置bin 文件夹下即可

放置的文件可以通过http://wiki.opensns.qq.com/wiki/%E3%80%90QQ%E7%99%BB%E5%BD%95%E3%80%91SDK%E4%B8%8B%E8%BD%BD这个页面下的.NETSDK下载

 

添加上面2处至适当位置其中要说明的是 如果开发环境是vs2010 第一处的版本需要修改成 4.0.0.0我的开发环境是vs2008 所以用2.0.0.0即可

为了拷贝方便代码黏贴如下:

<sectionGroup name="QQSectionGroup">

<section name="QzoneSection" type="System.Configuration.NameValueSectionHandler,System,Version=2.0.0.0, Culture=neutral,PublicKeyToken=b77a5c561934e089" />

</sectionGroup>

<QQSectionGroup>

<QzoneSection>

<add key="AppKey" value="100273220" />

<add key="AppSecret" value="**************************" />

<addkey="CallBackURI" value="www.qihaolu.com/qqshouquan.aspx"/>

<add key="AuthorizeURL" value="https://graph.qq.com/oauth2.0/authorize" />

</QzoneSection>

</QQSectionGroup>

说明:

AppKey:网站应用APP ID

AppSecret:网站应用 KEY

CallBackURI:QQ登陆授权后返回的页面地址

第二步:

在前台登录处添加以下代码:

<a href="<%=stateA %>">QQ帐号登录</a>

在后台添加以下代码:

using QConnectSDK;
using QConnectSDK.Models;
using QConnectSDK.Context;
using System.IO;

protected string stateA = string.Empty;

if (!IsPostBack)
{
            var context = new QzoneContext();
            string state = Guid.NewGuid().ToString().Replace("-", "");
            string scope = "get_user_info,add_share,list_album,upload_pic,check_page_fans,add_t,add_pic_t,del_t,get_repost_list,get_info,get_other_info,get_fanslist,get_idolist,add_idol,del_idol,add_one_blog,add_topic,get_tenpay_addr";
            var authenticationUrl = context.GetAuthorizationUrl(state, scope);
            Session["requeststate"] = state;
            Session["scope"] = scope;
            stateA = authenticationUrl;
}

提示:

一开始我写成<a href="https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=100273220&redirect_uri=www.qihaolu.com/qqlogin.aspx">QQ登录</a>

然后把上面的后台代码放在qqlogin.aspx后台里面,结果登录的时候要点两次登录才能登录

第三步:

创建qqshouquan.aspx页面 web.config里面有设置CallBackURI,在.cs里面添加如下代码

using QConnectSDK;
using QConnectSDK.Models;
using QConnectSDK.Context;
using System.IO;

protected void Page_Load(object sender, EventArgs e)
{
        if (!IsPostBack)
        {
            QQ();
        }
  }

public void QQ()
    {
        if (Request.Params["code"] != null)
        {
            QOpenClient qzone = null;
            QConnectSDK.Models.User currentUser = null;

var verifier = Request.Params["code"];
            string state = Session["requeststate"].ToString();
            qzone = new QOpenClient(verifier, state);
            currentUser = qzone.GetCurrentUser();

string openid = qzone.OAuthToken.OpenId;
            string aa = qzone.OAuthToken.AccessToken;

if (null != currentUser)
            {
                string id = openid.Substring(0, 8) + "-" + openid.Substring(8, 4) + "-" + openid.Substring(12, 4) + "-" + openid.Substring(16, 4) + "-" + openid.Substring(20, 12);
                int sum = Bll.GetRecordCount("CUSTOMER_ID='" + id + "'");
                if (sum > 0)
                {
                    //存在(跳转)
                    Response.Cookies["id"].Value = id;
                    Response.Redirect("Index.aspx");
                }
                else
                {
                    //不存在(新增)
                    model.CUSTOMER_ID = new Guid(id);//QQ唯一ID
                    model.CUSTOMER_SEX = currentUser.Gender;
                    model.CUSTOMER_LOGIN_TYPE = 2;
                    model.CUSTOMER_STATE = 2;
                    model.CUSTOMER_NICKNAME = currentUser.Nickname;//昵称
                    Bll.Add(model);
                    Response.Cookies["id"].Value = id;
                    Response.Redirect("Index.aspx");
                }
            }
        }

至此就可以获取QQ用户的信息了,及openid 和AccessToken

用微博帐号登录:

请AppKey流程我就不说了,和QQ的申请流程一样,微博登录和发表微博在http://weibosdk.codeplex.com/有原原本本的源码下载,这里我就不多说了,要是还不会可以先去看那里的视频教程

用QQ帐号和新浪微博帐号登录网站的更多相关文章

  1. ASP.NET MVC应用程序中支持用户使用腾讯QQ和微信以及新浪微博的第三方登录

    什么是第三方授权登录,就是一些大家都会有的帐号如QQ.微信.淘宝.微博等账户.通过那些巨头公司提供的api直接实现登录. 当然,我们是不可能得到你的用户名和密码的.不了解的人,可能会存在这个疑虑.我们 ...

  2. 用root帐号切换其他帐号提示 su: warning: cannot change directory to /home/oracle: Permission denied

    用root帐号切换其他帐号提示: 出错原因: 基本上是根目录或者是/home/oracle目录权限的问题 解决办法: 更改根目录权限为755,并保证对应用户主目录的所属用户和所属组一致和用户名一致. ...

  3. 微信、QQ、新浪微博等第三方登录,你想知道的都在这了(上) 微信、QQ、新浪微博等第三方登录,你想知道的都在这了(下)

    微信.QQ.新浪微博等第三方登录,你想知道的都在这了(上):https://www.jianshu.com/p/133d84042483 微信.QQ.新浪微博等第三方登录,你想知道的都在这了(下):h ...

  4. .NET C#使用微信公众号登录网站

    适用于:本文适用于有一定微信开发基础的用户 引言:花了300大洋申请了微信公众平台后,发现不能使用微信公众号登录网站(非微信打开)获得微信帐号.仔细研究后才发现还要再花300大洋申请微信开放平台才能接 ...

  5. 微信公众号与APP微信第三方登录账号打通

    一个项目同时开发了APP和微信服务号,需要做到APP和微信服务号的账号互通同步,也就是说一个账号在2个地方都可以用,当然这个前提是保证你公司自己的服务器的数据库用的是同一套. 为保证用户数据的唯一性, ...

  6. 用java开发微信公众号:测试公众号与本地测试环境搭建(一)

    本文为原创,原始地址为:http://www.cnblogs.com/fengzheng/p/5023678.html 俗话说,工欲善其事,必先利其器.要做微信公众号开发,两样东西不可少,那就是要有一 ...

  7. 微信订阅号里实现oauth授权登录,并获取用户信息 (完整篇)

    摘要 这段时间一直有人问我,订阅号实现的oauth授权登录的问题,之前写的比较简单,很多人不明白.众所周知,微信公众号分订阅号.服务号.企业号:每个号的用途不一样,接口开放程度也不一样.微信还有个扯淡 ...

  8. 微信公众号JSAPI支付-多公众号向同一商户号支付的问题解决

    一.背景 项目提供公众号商城集成,在公众号里进行商品的购买,并与多家公众号合作增加渠道流量. . 二.实现 有关微信公众号.商户号的开通与支付绑定不细说 从背景里可知,我们需要实现多个公众号购买向同一 ...

  9. Java 扫描微信公众号二维码,关注并自动登录网站

    https://blog.csdn.net/qq_42851002/article/details/81327770 场景:用户扫描微信公众号的二维码,关注后自动登录网站,若已关注则直接登录. 逻辑: ...

随机推荐

  1. Simple dc/dc converter increases available power in dual-voltage system

    The schematic in Figure 1 shows a way to increase the power available from a current-limited 5V supp ...

  2. DLL Injection and Hooking

    DLL Injection and Hooking http://securityxploded.com/dll-injection-and-hooking.php Three Ways to Inj ...

  3. CC1101是一种低成本真正单片的UHF收发器

    CC1101是一种低成本真正单片的UHF收发器,为低功耗无线应用而设计.电路主要设定为在315.433.868和915MHz的ISM(工业,科学和医学)和SRD(短距离设备)频率波段,也可以容易地设置 ...

  4. How to Distinguish a Physical Disk Device from an Event Message

    https://support.microsoft.com/en-us/help/159865  https://support.microsoft.com/en-us/help/244780/inf ...

  5. [IIS]由安装IIS和.net framework先后顺序引发的问题,你中招了吗?

    引言 最近帮别人做了一个小网站,在本机部署测试的时候,竟然浏览不了aspx后缀的页面,但可以浏览html页面,由此想到了IIS对静态页和动态页不同的处理方式. http请求到达服务器 当服务器接收到一 ...

  6. jq设置样式

    单个样式: $(this).css("color","red"); 多个样式: $(this).css({color:"red",backg ...

  7. Jolokia

    Jolokia 是一个用来访问远程 JMX MBeans 的崭新方法,与 JSR-160 连接器不同的是,它使用基于 HTTP 的 JSON 格式作为通讯协议,提供 JMX 批量操作等.需要第三方ja ...

  8. ICLR 2014 International Conference on Learning Representations深度学习论文papers

    ICLR 2014 International Conference on Learning Representations Apr 14 - 16, 2014, Banff, Canada Work ...

  9. Kafka目录

    1. kafka生产者.消费者java示例 2. apache kafka监控系列-KafkaOffsetMonitor(转) 3. Kafka0.8.2删除topic逻辑(转) 4. spark s ...

  10. 关于QtCharts中的映射器与模型的使用

    简述 本文章基于博主在使用QtCharts中一些经验总结,相关了Qt类有QVXYModelMapper,CustomTableModel(一个继承了QAbstractTableModel的类,用于实现 ...