第三方集成qq sina

2024-05-13 13:58
文章标签 第三方 qq 集成 sina

本文主要是介绍第三方集成qq sina,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第三方接口集成时需要注意事项

1、当第三方(QQ或sina)API重定向到我们的系统的时候,我们都可以根据它(第三方,以下也称它)返回的code得到它的用户的信息。
2、如果是QQ第三方返回的信息,那么我们为了防止用户使用QQ二次登陆的时候,拿不到上一次的信息的情况,通常性我们会在第一次登陆的时候向我们的表里面放入用户的信息。QQ存入库里的时候,建议使用openID 作为 您系统中用户表的主键,因为用户的openid是唯一的,且直接与QQ关联的,所以建议使用openid来作为主键。而name则可以作为我们数据库里的另一个字段存入库。
3、如果是sina第三方返回的信息,那么我们为了防止用户使用新浪二次登陆的时候,拿不到上一次的信息的情况,通常性我们会在第一次登陆的时候向我们的表里面放入用户的信息。用户信息存入库里的时候,建议使用uid 作为 您系统中用户表的主键,因为用户的uid是唯一的,且直接与sina关联的,所以建议使用uid来作为主键。而nickname(注:昵称)则可以作为我们数据库里的另一个字段存入库。

第三方登录接口集成

QQ登录集成可参考:网站如何集成QQ登录
新浪微博登录可参考:网站如何集成新浪微博登录

申请Appkey与Appid

在QQ的 开发平台 申请Appkey与Appid,但是申请的前提是需要域名,把拿到的appkey与appid记录下来以便后面使用。

下载Java sdk包

到技术支持中心下载Java sdk包,不要自己用httpclient去调用QQ的接口,那样不安全,可能会被别人攻击网站,下载好的sdk里会有一个demo,把demo里的lib下的依赖包放到工程lib下,然后把那几个.property文件放到src下面,并把qqconnectconfig.properties文件里的前三项改成你自己的appkey,appid,和redirect_URI(QQ同意授权后,跳回到您的系统里的哪个路径)

使用说明

在页面点击一个按钮后,跳到action里的方法,在方法里,重定向一个请求到QQAPI。用QQ的API我们直接重定向的方式如下:

1
String url= new ServerRedirectView( new Oauth().getAuthorizeURL(request));

这样我们可以得到请求的路径了,使用自带的qq的sdk包,我们可以直接这样调。如果不使用这个方式,则直接发送请求:
https://graph.qq.com/oauth2.0/authorize?response_type=code&client_id=[YOUR_APPID]&redirect_uri=[YOUR_REDIRECT_URI]&scope=[THE_SCOPE] 请求上面这个地址。
请求后,会弹出一个授权页面,如果我们同意授权后,会自动跳转到我们的“redirect_uri”路径里,并在我们的“redirect_uri”后面加上“?code=XXXXXXX”,然后我们可以根据返回来的参数code来拿到access_token和其它的一些信息。
例如:我们可以拿到access_token后,可以根据它拿到用户的openid,然后根据access_token与openid可以拿到用户的信息。
代码如下:


详细见:http://connect.qq.com/manage/?apptype=web

申请Appkey与Appid

在新浪的 开发平台 下的网站接入申请Appkey与Appid,申请的前提是需要有域名,把申请到的appkey与appid记录下来,以便使用。
注意事项:在点击网站接入并填好接入的信息后,在管理中心会出现您接入的网站。点击进入您的网站接入的详细信息页,在左边的导航栏里会有一个应用信息栏目,点击展开,点击“高级信息”项目
OAuth2.0授权设置
红包箭头所指的项目请与您在系统中config.properties文件里的redirect_URI保持一致,如果不一致,会出现第三方授权错误,并且在调用系统的时候,会拿不到用户信息。

下载Java sdk包

到技术支持中心下载Java sdk包,不要自己用httpclient去调用新浪的接口,那样不安全,可能会被别人攻击网站。下载好的sdk里会有一个demo,把demo里的lib下的依赖包放到工程lib下,下载下来的文件里会有一个weibo4j包,把其拷贝放在项目的src下,并把config.properties文件里的前三项改成你自己的appkey,appid,和redirect_URI(新浪同意授权后,跳回到您的系统里的哪个路径)。

使用说明

在页面点击一个按钮后,跳到action里的方法,在方法里,重定向一个请求到sinaAPI。用sian的API我们直接重定向的方式如下:
String url = new Oauth().authorize(“code”, “code”),这样我们可以得到请求的路径了,使用自带的sina的sdk包,我们可以直接这样调。
进入新浪授权页面
请求后,会弹出一个授权页面,如果我们同意授权后,会自动跳转到我们的“redirect_uri”路径里,并在我们的“redirect_uri”后面加上“?code=XXXXXXX”
然后我们可以根据返回来的参数code来拿到access_token和其它的一些信息。例如:
我们可以拿到access_token对像后后,可以根据它拿到用户的access_token串和用户的ID,然后根据userid可以拿到用户的信息,getuid方法没有,自己生成一下就可以了,方便操作。代码如下:
新浪微博授权代码
这样,我们就可以拿到用户的信息不了。


这篇关于第三方集成qq sina的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/985898

相关文章

SpringBoot集成WebService(wsdl)实践

《SpringBoot集成WebService(wsdl)实践》文章介绍了SpringBoot项目中通过缓存IWebService接口实现类的泛型入参类型,减少反射调用提升性能的实现方案,包含依赖配置... 目录pom.XML创建入口ApplicationContextUtils.JavaJacksonUt

使用Go调用第三方API的方法详解

《使用Go调用第三方API的方法详解》在现代应用开发中,调用第三方API是非常常见的场景,比如获取天气预报、翻译文本、发送短信等,Go作为一门高效并发的编程语言,拥有强大的标准库和丰富的第三方库,可以... 目录引言一、准备工作二、案例1:调用天气查询 API1. 注册并获取 API Key2. 代码实现3

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

SpringBoot集成XXL-JOB实现任务管理全流程

《SpringBoot集成XXL-JOB实现任务管理全流程》XXL-JOB是一款轻量级分布式任务调度平台,功能丰富、界面简洁、易于扩展,本文介绍如何通过SpringBoot项目,使用RestTempl... 目录一、前言二、项目结构简述三、Maven 依赖四、Controller 代码详解五、Service

springboot2.1.3 hystrix集成及hystrix-dashboard监控详解

《springboot2.1.3hystrix集成及hystrix-dashboard监控详解》Hystrix是Netflix开源的微服务容错工具,通过线程池隔离和熔断机制防止服务崩溃,支持降级、监... 目录Hystrix是Netflix开源技术www.chinasem.cn栈中的又一员猛将Hystrix熔

MyBatis-Plus 与 Spring Boot 集成原理实战示例

《MyBatis-Plus与SpringBoot集成原理实战示例》MyBatis-Plus通过自动配置与核心组件集成SpringBoot实现零配置,提供分页、逻辑删除等插件化功能,增强MyBa... 目录 一、MyBATis-Plus 简介 二、集成方式(Spring Boot)1. 引入依赖 三、核心机制

SpringBoot集成P6Spy的实现示例

《SpringBoot集成P6Spy的实现示例》本文主要介绍了SpringBoot集成P6Spy的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录本节目标P6Spy简介抛出问题集成P6Spy1. SpringBoot三板斧之加入依赖2. 修改

springboot项目中集成shiro+jwt完整实例代码

《springboot项目中集成shiro+jwt完整实例代码》本文详细介绍如何在项目中集成Shiro和JWT,实现用户登录校验、token携带及接口权限管理,涉及自定义Realm、ModularRe... 目录简介目的需要的jar集成过程1.配置shiro2.创建自定义Realm2.1 LoginReal

SpringBoot集成Shiro+JWT(Hutool)完整代码示例

《SpringBoot集成Shiro+JWT(Hutool)完整代码示例》ApacheShiro是一个强大且易用的Java安全框架,提供了认证、授权、加密和会话管理功能,在现代应用开发中,Shiro因... 目录一、背景介绍1.1 为什么使用Shiro?1.2 为什么需要双Token?二、技术栈组成三、环境