通过Javascript Facebook API获取Facebook用户信息,以及当前用户的好

  在使用APP之前需要先生成Facebook APP ID 这不必多说。

  生成Facebook APP ID之后 在javascript中 初始化Facebook信息

  而且我定义了一些我需要获取获取数据的全局变量

  <script language="javascript" type="text/javascript">

  //这是我们要获取的信息变量

  var facebookId;

  var facebookName;

  var facebookProfileImg;

  var facebookBooks;

  var facebookMovies;

  var facebookMusic;

  var facebookLocations;

  var friendFbIds = ‘‘;

  var facebookEmail;

  FB.init({

  appId: ‘138343092941586‘, //这里设置你申请的APP ID

  status: true,

  cookie: true,

  xfbml: true,

  oauth: true

  });

  </script>

  复制代码

  初始化完成之后,可以通过某一个事件来触发获取Facebook信息的功能。(我使用了id的点击事件)

  <script language="javascript" type="text/javascript">

  $(‘#invite‘)。click(function(){

  FB.getLoginStatus(checkResponse);

  });

  //checkResponse方法是用来检测当前用户是否登陆的。

  function checkResponse(response) {

  if (!response.authResponse) {

  //scope是获取权限的意思,你可以获取其他的例如:offline_access, publish_stream等权限

  FB.login(handleSessionResponse,{ scope:‘email‘});

  } else {

  //这个方法就是获取Facebook用户信息的方法

  retrieveProfiles();

  }

  }

  //次方法是用来处理Facebook登陆的回话相应。

  function handleSessionResponse(response) {

  if (!response.authResponse) {

  return;

  } else {

  //这个方法就是获取Facebook用户信息的方法

  retrieveProfiles();

  }

  }

  </script>

  复制代码

  下面这里才是重点,根据上面获取的Facebook信息,通过FacebookAPI查询Facebook的数据库即可得到相关的信息

  <script language="javascript" type="text/javascript">

  //用来循环获取Facebook 好友ID

  Object.size = function(obj) {

  var size = 0;

  for (var key in obj) {

  if (obj.hasOwnProperty(key)) size++;

  }

  return size;

  }

  function retrieveProfiles() {

  // 通过Facebook API 查询用户信息

  FB.api({ method: ‘fql.query‘, query: ‘SELECT uid,email, name, pic_square, books, movies, music, current_location FROM user WHERE uid=me()‘ }, function(response) {

  // fetch the status from response

  var user = response[0];

  if (user == undefined) {

  $(‘span.loading‘)。replaceWith(‘<span>Sorry, please try again.</span>‘);

  } else {

  facebookId = user.uid;

  facebookName = user.name;

  facebookProfileImg = user.pic_square;

  facebookMovies = user.movies;

  facebookMusic = user.music;

  facebookBooks = user.books;

  facebookEmail = user.email;

  facebookLocations = user.current_location;

  //获取当前用户的Facebook好友

  FB.api({ method: ‘fql.query‘, query: ‘SELECT uid2 FROM friend WHERE uid1 = ‘ + facebookId }, function(data) {

  console.log(data);

  //注意这里用到了Object.size方法

  for (var i = 0; i < Object.size(data); i++) {

  friendFbIds = friendFbIds + "‘" + data[i].uid2 + "‘";

  if (i != Object.size(data) - 1) {

  friendFbIds += ‘,‘;武汉仁济精神病治疗

  }

  }

  console.log(friendFbIds);

  console.log("facebookName"+facebookName);

  console.log("facebookEmail"+facebookEmail);

  console.log("facebookProfileImg"+user.pic_square);

  console.log("facebookMovies"+user.movies);

  console.log("facebookMusic"+user.music);

  console.log("facebookBooks"+user.books);

  console.log("facebookLocations"+user.current_location);

  });

  }

  });

  }

  </script>

  复制代码http://www.dztxn.com/space/?342/log/829

时间: 2024-10-13 11:27:03

通过Javascript Facebook API获取Facebook用户信息,以及当前用户的好的相关文章

借助Sigar API获取CPU相关信息

Sigar(全称System Information Gatherer And Reporter,即系统信息收集报表器),它提供了一个开源的跨平台的收集计算机硬件和操作系统信息的API(该API底层接口用C语言编写),本文将演示如何借助Sigar API获取CPU相关信息: package com.ghj.packageoftest; import org.hyperic.sigar.Cpu; import org.hyperic.sigar.CpuInfo; import org.hyperi

.Net Web Api——获取客户端浏览器信息

第一次接触到web api,发现这个东西是REST风格的:---- 微软的web api是在vs2012上的mvc4项目绑定发行的,它提出的web api是完全基于RESTful标准的,完全不同于之前的(同是SOAP协议的)wcf和webService,它是简单,代码可读性强的,上手快的,如果要拿它和web服务相比,我会说,它的接口更标准,更清晰,没有混乱的方法名称,有的只有几种标准的请求,如get,post,put,delete等,它们分别对应的几个操作,下面讲一下: GET:生到数据列表(默

PHP通过Zabbix API获取服务器监控信息

开源监控系统Zabbix提供了丰富的API,供第三方系统调用. 基本步骤如下: 1.获取合法认证:连接对应Zabbix URL,并提供用户名和密码,HTTP方法为"POST",HTTP头部类型为"application/json" 1 public function zabbixJsonRequest($uri, $data) { 2 try{$json_data = json_encode($data); 3 $c = curl_init(); 4 curl_se

spring security 控制用户信息用户加密 缓存用户信息

1. MD5加密 任何一个正式的企业应用中,都不会在数据库中使用明文来保存密码的,我们在之前的章节中都是为了方便起见没有对数据库中的用户密码进行加密,这在实际应用中是极为幼稚的做法.可以想象一下,只要有人进入数据库就可以看到所有人的密码,这是一件多么恐怖的事情,为此我们至少要对密码进行加密,这样即使数据库被攻破,也可以保证用户密码的安全. 最常用的方法是使用MD5算法对密码进行摘要加密,这是一种单项加密手段,无法通过加密后的结果反推回原来的密码明文. 首先我们要把数据库中原来保存的密码使用MD5

finger 工具:用来查询用户信息,侧重用户家目录、登录SHELL等

finger 工具侧重于用户信息的查询:查询的内容包括用户名(也被称为登录名Login),家目录,用户真实的名字(Name)... ... 办公地址.办公电话:也包括登录终端.写状态.空闭时间等: 我们最常用finger 来查询用户家目录.用户真实名.所用SHELL 类型.以及办公地址和电话,这是以参数 -l 长格式输出的:而修改用户的家目录.真实名字.办公地址及办公电话,我们一般要能过chfn命令进行: 语法格式: finger [参数选项] [用户名] -l 采用长格式(默认),显示由-s选

Linux用户信息文件和用户信息相关文件

01.用户信息文件  =>  /etc/passwd root:x:0:0:root:/root:/bin/bash 字段解析: (用户名称):(密码标识):(用户ID):(用户组ID):(说明信息):(家目录):(登入之后的shell解释器) 第一字段:用户名称 第二字段(x):密码标志 第三字段:UID ( 用户ID ) 0:   超级用户 1-499:  系统用户(伪用户) 500-65535: 普通用户 第四字段:GID (用户初始组ID) 初始组:指用户一登录就立刻拥有这个用户的相关权

使用mybatis开发Dao的原始方法,实现根据用户id查询一个用户信息 、根据用户名称模糊查询用户信息列表 、添加用户信息等功能

1.需求 将下边的功能实现Dao: 根据用户id查询一个用户信息 根据用户名称模糊查询用户信息列表 添加用户信息 2. 原始Dao开发方法需要程序员编写Dao接口和Dao实现类 3.User.xml映射文件的内容为: <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "h

利用百度地图API获取当前位置信息

利用百度地图API可以做很多事情,个人感觉最核心也是最基础的就是定位功能了.这里分享一个制作的JS可以实现登录网页后定位: 1 <script type="text/javascript"> 2 var map; 3 var gpsPoint; 4 var baiduPoint; 5 var gpsAddress; 6 var baiduAddress; 7 var x; 8 var y; 9 function getLocation() { 10 //根据IP获取城市 1

linux添加用户信息,修改用户信息

Linux操作系统创建用户可以设置用户的信息,设置指定UID,GID,用户备注信息,指定登录shell,指定家目录,可以设置和修改的内容很多. 比如如下的操作 useradd [options] username useradd -u username 指定UID建立用户 useradd -u 1111 tom useradd -g username 指定GID建立用户 useradd -g 1111 jim useradd -c username 指定注释信息建立用户 useradd -c "