• 大小: 29.43MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-04
  • 语言: Java
  • 标签: java  

资源简介

linkin 微博 有测试过,新浪应该也没问题,facebook没有测试

资源截图

代码片段和文件信息

package com.qingwen.app.login.controller;

import java.io.IOException;
import java.util.HashMap;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONobject;

import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.qingwen.app.login.util.facebook.FacebookUtil;
import com.qingwen.app.login.util.facebook.HttpClientUtil;
import com.qingwen.common.util.baseAction;
import com.qingwen.common.util.Common;


/**  
 * http://blog.csdn.net/manongxiaomei/article/details/66475378?winzoom=1
 * @ClassName: TestController  
 * @Description: FaceBook第三方登录   
 * @date Mar 15 2017 
 * 1登录Facebook官网注册一个开发者账号:https://developers.facebook.com/
   2 创建一个应用(APPS)
   3在自己创建的应用中可以看到自己的应用编号和应用密钥
   4在设置中可以创建一个回调,这个是回调地址,比如http://localhost:8080/facebookLogin
   5获取code值:https://www.facebook.com/dialog/oauth?client_id=应用编号&redirect_uri=回调地址&code=,这时在地址栏上会出现一长串code
   6获取access_token:https://graph.facebook.com/oauth/access_token?client_id=应用编号&redirect_uri=回调地址&client_secret=应用密钥&code=刚才获取到的code
   7获取用户资料:https://graph.facebook.com/me?access_token=刚才获取到的access_token,得到用户的id和name   
 */
@Controller
@RequestMapping({“/facebook“})
public class FacebookController  extends baseAction{


//表示取得的用户信息的权限范围  
private static String scope = “user_about_meemailread_stream“;
 
//获取临时口令
private static String code_url=“https://www.facebook.com/v2.8/dialog/oauth“;

//获取用户信息
private static String user_url=“https://graph.facebook.com/me“; 
//验证口令
private static String verify_url=“https://graph.facebook.com/debug_token“;
//获取应用口令
 

    //    //第一步访问登录页面
@RequestMapping(value=“/index“)
public String toIndex(HttpServletRequest request){
return “facebooklogin“;
}

/**
 * @throws IOException 
 * @title: doLogin  
 * @Description: 调用“登录”对话框和设置重定向网址   
 * @return void 这个就是在应用中定义的跳转网址,也就是重定向第二步之后回调的地址,并且带上了code参数
 * @date Mar 17 2017 9:29:03 AM
 * @throws
 */
@RequestMapping(value=“/doLogin“)
@ResponseBody
public object doLogin(HttpServletRequest requestHttpServletResponse response) throws IOException{
String code = request.getParameter(“code“); //第二步获取code,迷糊的同学往下看,方法上也有对应的步骤
if(StringUtils.isNotBlank(code)){
String accessToken = FacebookUtil.getFacebookAccessToken(code);//第三步,用code(临时口令)换取accessToken
JSONobject userInfo=null;
if(StringUtils.isNotBlank(accessToken)){
userInfo = getUserInfo(accessToken);//第四步,用accessToken获取用户信息
}else{
System.out.println(“accessToken is null“);
}
System.out.println(userInfo);
return userInfo;
//对用户信息进行处理
}else{
return “/code“;
}
}


/**
 * @throws ServletException 
 * @throws IOException 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        829  2017-06-16 16:31  test_login\.classpath

     文件       1335  2017-06-20 14:31  test_login\.project

     文件        522  2017-05-31 09:56  test_login\.settings\.jsdtscope

     文件       1009  2017-06-07 11:05  test_login\.settings\com.genuitec.eclipse.j2eedt.core.prefs

     文件        162  2017-06-20 14:33  test_login\.settings\org.eclipse.core.resources.prefs

     文件        598  2017-06-16 16:26  test_login\.settings\org.eclipse.jdt.core.prefs

     文件        106  2017-06-07 11:05  test_login\.settings\org.eclipse.ltk.core.refactoring.prefs

     文件        481  2017-06-07 11:05  test_login\.settings\org.eclipse.wst.common.component

     文件        414  2017-06-07 11:05  test_login\.settings\org.eclipse.wst.common.project.facet.core.xml

     文件         49  2017-05-31 09:56  test_login\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2017-05-31 09:56  test_login\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件       7096  2017-06-06 20:15  test_login\src\com\qingwen\app\login\controller\FacebookController.java

     文件       5071  2017-06-20 14:35  test_login\src\com\qingwen\app\login\controller\linkedinController.java

     文件       1610  2017-06-02 10:37  test_login\src\com\qingwen\app\login\controller\WbLoginController.java

     文件       4822  2017-06-20 14:39  test_login\src\com\qingwen\app\login\controller\WchatController.java

     文件       3006  2017-06-06 20:14  test_login\src\com\qingwen\app\login\util\facebook\FacebookUtil.java

     文件       4942  2017-06-07 11:24  test_login\src\com\qingwen\app\login\util\facebook\HttpClientUtil.java

     文件        573  2017-06-16 14:05  test_login\src\com\qingwen\app\login\util\wchat\BeanFactoryContext.java

     文件       3128  2017-06-16 10:36  test_login\src\com\qingwen\app\login\util\wchat\WeiChatAPI.java

     文件       1696  2017-06-20 14:39  test_login\src\com\qingwen\app\login\util\wchat\WeixinFinalValue.java

     文件       1241  2017-06-16 10:34  test_login\src\com\qingwen\app\login\util\wchat\WeixinKit.java

     文件       3417  2017-06-16 16:53  test_login\src\com\qingwen\app\login\util\wchat\WeixinUtil.java

     文件       3790  2017-06-02 09:48  test_login\src\com\qingwen\app\login\util\weibo\Account.java

     文件      14508  2017-06-02 09:50  test_login\src\com\qingwen\app\login\util\weibo\Comments.java

     文件      10773  2017-06-02 10:04  test_login\src\com\qingwen\app\login\util\weibo\Favorite.java

     文件      23931  2017-06-02 09:50  test_login\src\com\qingwen\app\login\util\weibo\Friendships.java

     文件       2669  2017-06-02 09:43  test_login\src\com\qingwen\app\login\util\weibo\http\AccessToken.java

     文件       4276  2017-06-01 20:41  test_login\src\com\qingwen\app\login\util\weibo\http\base64Encoder.java

     文件      28021  2017-06-01 20:41  test_login\src\com\qingwen\app\login\util\weibo\http\HTMLEntity.java

     文件      17020  2017-06-02 09:54  test_login\src\com\qingwen\app\login\util\weibo\http\HttpClient.java

............此处省略358个文件信息

评论

共有 条评论