paip.网站接入QQ登录总结

作者Attilax , 1466519819@qq.com

1.建立图片按钮连接
————--------------
我的是这样的。
 <a href="/qqlogin/" target="_blank"><img src="http://qzonestyle.gtimg.cn/qzone/vas/opensns/res/img/Connect_logo_7.png"

alt="qqloginImg" border="0"></a>

2.下载.NET SDK从官网上,并加入项目引用
--------------------------------
Connect_.NET_SDK_for_OAuth2_V1.1
QConnectSDK.dll
RestSharp.dll
Newtonsoft.Json.dll

3.配置WEB.CONFIG,加入你的APPID和KEY
------------------------------------------------
3.a根结点<configuration>,加入以下配置
--------------
 
 <configSections>
  <!--qqlogin cfg1/3-->
  <sectionGroup name="QQSectionGroup">
   <section name="QzoneSection" type="System.Configuration.NameValueSectionHandler,System,

Version=4.0.0.0, Culture=neutral,PublicKeyToken=b77a5c561934e089" />
  </sectionGroup>
  <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection,

EntityFramework, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
  <!--//qqlogin cfg1/3 end-->
 </configSections>
................................................

3.b配置<QQSectionGroup>
---------------------------------------
<!--  qqlogin cifg start-->
 <QQSectionGroup>
  <QzoneSection>
   <add key="AppKey" value="100310245" />
   <!--这里这填上你在http://connect.qq.com/manage/注册后获得的APP ID-->
   <add key="AppSecret" value="cf7c7516d074164f175fb64225c1938e" />
   <!--这里填上注册后的APP KEY-->
   <add key="CallBackURI" value="http://www.zuketang.com/qqlogin/calback.aspx" />
   <!--注册时写的回调地址-->
   <add key="AuthorizeURL" value="https://graph.qq.com/oauth2.0/authorize" />
  </QzoneSection>
 </QQSectionGroup>

3.c配置<appSettings>,这里好向不配置也可以了用。
-----------------
<appSettings>
  
  <!--qqlogcfg c-->
  <!--<add key="ClientValidationEnabled" value="true" />    <add key="UnobtrusiveJavaScriptEnabled"

value="true" />    <add key="DaoType" value="Codingwell.DevText.SQLDAL" />-->
  <add key="appKey" value="100310245" />
  <!--这里如上面一样-->
  <add key="appSecret" value="cf7c7516d074164f175fb64225c1938e" />
  <add key="callbackUrl" value="http://www.zuketang.com/qqreturn.htm" />
  <add key="SmtpHost" value="smtp.gmail.com" />
  <add key="SmtpUser" value="" />
  <add key="SmtpPassword" value="" />
  <add key="EnableSsl" value="true" />
  <add key="SslPort" value="587" />
  <!--end qqlogcfg c-->
 </appSettings>

4.发起请求/qqlogin/default.aspx
-----------------------------------------
    protected void Page_Load(object sender, EventArgs e)
    {
  //
  //TODO: 在此处添加 逻辑
  //
        GetRequestToken();
    }

private void GetRequestToken()
    {
        QzoneContext 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,ge

t_fanslist,get_idolist,add_idol,del_idol,add_one_blog,add_topic,get_tenpay_addr";
        string authenticationUrl = context.GetAuthorizationUrl(state, scope);
        //request token, request token secret 需要保存起来
        //在demo演示中,直接保存在全局变量中.真实情况需要网站自己处理
        Application["requeststate"] = state;
        Response.Redirect(authenticationUrl);

}

5.接收OPENID并保存实现登录/qqlogin/calback.aspx
------------------------
 protected void Page_Load(object sender, EventArgs e)
    {
   if (Request.Params["code"] != null)
        {
            QOpenClient qzone = null;
            User currentUser = null;

string verifier = Request.Params["code"];
            string state = Application["requeststate"].ToString();
            qzone = new QOpenClient(verifier, state);
            currentUser = qzone.GetCurrentUser();
            if (null != currentUser)
            {
                this.Label1.Text = "成功登陆";
                this.Label2.Text = currentUser.Nickname;
                this.Image1.ImageUrl = currentUser.Figureurl;

}
            Session["QzoneOauth"] = qzone;

//set login token
            string loginuname = qzone.OAuthToken.OpenId;
            IloginController lc = god.getloginController();
            lc.setLoginToken(loginuname);

IqqInfoController qic = god.getqnfoController();
            qqinfo qi = new qqinfo();
            qi.openid = loginuname;
            qi.user = currentUser;
            qic.save(qi);

Response.Redirect("/");
        } 
    }

6.设置网站类型为.NET 4.0 支持
--------------------------------
因为此QQ SDK是.NET4.0开发的,需要.NET4.0环境。

IIS,网站》应用程序池。ASP.NET v4.0 Classic

IIS管理器》连接---根结点机器>IIS> ISAPI 和 CGI 限制>打开ASP.NET4.0 的扩展限制。。一个是FRAMWORK64位的不用管,只打开

FRAMWORK32版本的。。

参考
--------------
网站使用QQ登陆 - 追夢 - 博客园.htm
OAuth 、Xauth 和OAuth2.0有什么区别 [复制链接]

paip.网站接入QQ登录总结相关推荐

  1. 网站接入QQ登录过程(防踩坑)

    一个要留住用户的网站,经常会以通用的方式进行登录,手机号.微信.QQ.邮箱,这些登录都各有自己的规则,这篇文章记录一下接入QQ登录的过程,给大家梳理下,防止后来人踩坑. 1.进行开发者注册: 在QQ互 ...

  2. html 加QQ链接QQ版本不支持,网站接入QQ登录(JS版)【最新教程 04.10更新】,亲身失败百次的总结...

    开发阶段(偏后端的同学可以查看 PHP版 教程) 3.1. 因为 QQ互联 官网只是简单的提供了 JS-SDK 以及相关的 API,可能部分同学初见比较茫然.所以为了帮助同学们更好理解,我整理出以下内 ...

  3. php接入qq登陆,网站接入QQ登录-腾讯开放平台

    完成开发者认证 使用qq登录完成实名认证,点击创建应用 创建网站应用 填写相关信息 回调域填写很重要如果填写错误扫码会出现 100010 [QQ登录]登录常见错误码 前端 这是目前网站接入的qq登录, ...

  4. 网站接入QQ登录最新2020 java版本

    1.首先先注册账号,然后填资料审核,等个三四天吧大概 https://connect.qq.com/ 2.审核通过后点击创建应用,把备案号什么的都填(这个审核两天之内一般) !!! 这里有个重点,网站 ...

  5. 第三方插件的引用(4):JAVA网站接入QQ登录

    前言 为了增加用户体验,用户能够快速的注册登录,第三方账号进行登录注册的的需求也就由此而诞生 开发环境:  IDE: STS jdk版本: 1.8 框架: SSM 要做QQ第三方登录,首先得在QQ互联 ...

  6. SpringBoot + Vue 个人网站接入QQ登录手把手教你 完整版 新手友好

    关于使用的QQ登录的原因 **最大的原因各位都想的到,QQ注册人数虽然呈下坡状态,但其影响力和使用群体之大不可忽视.下面我将一步步的将我如何实现QQ登录的步骤复现一遍** 准备工作 进入QQ互联网址 ...

  7. 网站接入QQ登录(QQ互联)php版的流程

    0.下载QQ登录(QQ互)php版:下载地址:点击打开链接(本文编写时最新版本:V2.1 ) 1.在QQ互联网站注册一个appid,配置网站地址和回调地址. 例:http://yzdd.app1101 ...

  8. php网站 qq登陆,php写的插件网站接入QQ登录,QQ互联

    qq按钮这里的链接是入口,调用你的api api_qq.php前端直接链接到此/** * 这个QQ登录简单实用,只要大家看我写的注释会一目了然,请注意看哦. * 带有"@todo" ...

  9. 网站接入QQ互联(JAVA版)

    简介: QQ互联是腾讯旗下的开放平台,通过QQ互联,网站主和开发者可以申请接入QQ登录.用户可以使用QQ账号登录接入的站点,通过添加分享和赞组件,将站点内容分享到QQ空间和朋友网,通过获取API授权, ...

  10. 19网站实现QQ登录功能

    一般网站要先做个用户注册的功能页面,但我的网站名气不大,不需要要求用户注册,所以直接使用腾讯QQ登录的API接口. 如何使用JS_SDK让网站拥有QQ登录的功能,官网的这篇文章写得还算完整:http: ...

最新文章

  1. 下列选项中 采用边界值平滑_使用Illustrator中的混合工具创建很有个性的蛋宝宝...
  2. java实现矩阵相乘
  3. 【华为云技术分享】前端快速建⽴Mock App
  4. java基础学习-(1)面向对象
  5. Linux VMware 快照不准,VmWare Workstation 关于Linux 虚拟机快照或克隆后 识别不到网卡问题...
  6. HDU1425 sort【排序】
  7. 12个强大的Web服务测试工具
  8. vs关于_CRT_SECURE_NO_WARNINGS警告说明
  9. 应用化工技术学计算机不,化工技术类包括哪些专业
  10. 数据可视化大屏真不是个事,这 30 个精美的模板拿走吧
  11. 腾讯云申请免费短信验证码
  12. 74HC595使用方法
  13. 编程,初来乍到,多多关照。
  14. 2020年你不可不知的自动化框架,可替代Selenuim的测试框架Top10
  15. Flutter键盘弹出造成布局异常解决
  16. 7天内完成基础USB开发(2)——Pionway SDK简介
  17. (转)Android WebRTC简介
  18. java 事务 回滚
  19. 【HSJFramework】Unity时间管理TimeManger计时器
  20. 核查清单-小程序分享功能

热门文章

  1. SCSI硬盘设备到/dev/sd设备的映射关系
  2. 13、OSPF配置实验之LSA2
  3. Linux服务器时间和北京标准时间自动校准命令
  4. 自解压shell文件的制作
  5. Cisco Firewall ASA conn code
  6. Symfony2Book16:Symfony2内部03-事件调度
  7. MySQL-快速入门(11)用户管理
  8. 并发编程: 生产消费模型、死锁与Rlock、线程、守护线程、信号量、锁
  9. [微信小程序开发] mpvue 微信小程序开发使用SASS写样式
  10. ThinkPHP 3.1.2 模板中的变量