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 ); }