zoukankan      html  css  js  c++  java
  • Twitter 第三方登录 (JavaScript SDK)

    1.在Twitter开发者平台注册自己的应用;注册成功会得到appkey和API Secret。

     注册地址 : https://apps.twitter.com

     注意:Callback URL 必填,否则闪退,可填一级域名;

      

    2.在https://auth-server.herokuapp.com/登录自己的Twitter账号;然后新建一个项目把在Twitter开发者平台注册得到的appkey和API Secret设置到这个项目中,注意一个appkey和API Secret只能设置一个域名,reference描述(举个例子如你的项目叫百度,那就写个百度),domain就是项目域名(主域名);grant_url填 "https://api.twitter.com/oauth/access_token"。如果没在这个网址注册你的项目的话,点击后Twitter将闪退。

    3.在页面引入Twitter所需的js。 http://adodson.com/hello.js/dist/hello.all.js

    window.twttr = (function(d, s, id) {
         var js, fjs = d.getElementsByTagName(s)[0],
          t = window.twttr || {};
          if (d.getElementById(id)) return t;
          js = d.createElement(s);
          js.id = id;
          js.src = "https://platform.twitter.com/widgets.js";
          fjs.parentNode.insertBefore(js, fjs);
    
          t._e = [];
          t.ready = function(f) {
              t._e.push(f);
          };
    
          return t;
    }(document, "script", "twitter-wjs"));

    4.在页面上声明一个Twitter登录的button并监听登录事件。

    <button class="twBtn" onclick = "login_twitter('twitter')" ></button>

    5.初始化Twitter登录并定义login_twitter登录方法。

        var log = console.log;
      hello.init(
        {        'twitter' : '***************'},    //App_key
        { oauth_proxy: 'https://auth-server.herokuapp.com/proxy' });
            function login_twitter(network){  //登录方法,并将twitter 作为参数传入
                // Twitter instance
                var twitter = hello(network);
                // Login
                twitter.login().then( function(r){
                    // Get Profile
                    return twitter.api('/me');
                }, log ) .then( function(p){
    
                    console.dir(p);
                    //已获取用户信息,在此处理
                     
                        var response = {'id':p.id,'first_name':p.name,'last_name':p.last_name,'picture':p.thumbnail,'link':'https://twitter.com/'+p.screen_name,'login_type':'twitter'};
                    console.dir(response);
    
                }, log );
            }
  • 相关阅读:
    程序员的困境
    linux中获取系统时间 gettimeofday函数
    Vim 模式及常用命令整理
    使用stringstream进行类型转换与字符串分割
    EasyNet开源项目计划
    用Akka构建一个简易的分布式文件系统
    SolrCloud攻略
    EasyNet.Solr 4.4.0发布及例子
    axis2调用webservice
    Oracle常用函数2查询
  • 原文地址:https://www.cnblogs.com/lishalom/p/6393956.html
Copyright © 2011-2022 走看看