快來試一試用facebook登錄你的網(wǎng)站

前段時間公司有個需求需要使用facebook登錄網(wǎng)站,但是一直都是做國內的網(wǎng)站,幸好自己搭好了現(xiàn)成的梯子,只有硬著頭皮上了,注意博主使用的vue-cli開發(fā)

第一步 在facebook注冊你的應用

網(wǎng)址:[facebook開發(fā)者]
(https://developers.facebook.com/apps/)

注冊新應用

博主在這里遇到一個小坑,電腦上OAuth驗證無法加載圖片,后面在手機上才得以搞定,這里就預示了后面的一個小bug

添加產品的時候選擇facebook登錄

獲得應用編號

添加url白名單

這里有個大坑,facebook開始限制https才能訪問,后面會敘述如何解決

第二步 使用hello.js登錄

附上官網(wǎng)地址 hello.js

開始的時候一直遵循官方提供的步驟流程走,但是奈何遇到許多問題,在vue中不方便處理,后面發(fā)現(xiàn)一款hello.js,不僅可以使用facebook登錄,還有google,twitter等等

首先 npm install hellojs

下面是一些核心代碼

登錄按鈕
引入插件,并且初始化,init的時候填入的就是我們在facebook注冊的應用編號
注冊方法

使用方法官網(wǎng)已經描述的很清楚了,有個地方調用hello.api,只需要.api("方法")就能使用啦
在Vue中添加Facebook、Twitter、vkontakte三方登錄我也是從這篇博文上參考的( ? ?ω?? )?

第三步 解決https

相信大部分人都是在本地開發(fā),url都是localhost:8080什么的,但是facebook現(xiàn)在是禁止http跳轉的,這里我推薦一款軟件ngrok,反向代理

網(wǎng)址:ngrok官網(wǎng)

首先在官網(wǎng)下載,然后本地安裝什么的就略過了,下一步就好了

監(jiān)聽8080端口
成功監(jiān)聽

前提是咱們讓自己的代碼跑起來,這里有個 https://6d6331f4.ngrok.io -> localhost:8080 ,沒錯,這就是我們需要的,但是又發(fā)現(xiàn)輸入網(wǎng)址后,報Invalid Host header錯誤,坑啊,其實需要去更改下webpack就好了

image.png

在build的webpack.dev.conf.js文件下,添加如下代碼

image.png
成功訪問

這個時候,https://6d6331f4.ngrok.io這個網(wǎng)址就能成功訪問了,而且內容都是我們原網(wǎng)址的,在手機上也能訪問哦,前提是同一局域網(wǎng)哈

返回信息

至此,已經可以成功拿到facebook返回的信息了,這里的picture其實就是頭像,但是這個頭像地址博主的電腦拿不到,但是手機可以,和OAuth驗證一樣,很奇怪

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • # Python 資源大全中文版 我想很多程序員應該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,840評論 6 427
  • 基于Vue的組件庫 https://github.com/ElemeFE/element" element 餓了...
    _執(zhí)著執(zhí)著再執(zhí)著閱讀 32,963評論 4 230
  • 8.3俎思敏 在2004年的5月26日,在家人萬分期待中,一個小小的生命呱...
    俎大大閱讀 524評論 0 0
  • 序 這是一個南國小城,溫和的氣候給了城市溫柔的節(jié)奏和溫柔的人們,小城居民喜喝茶,以茶待客,鐵觀音和普洱最為常見。 ...
    蕭以澈閱讀 362評論 0 2
  • 把細節(jié)加在一起總會悟到一點什么。我走在樹林里,旁邊有一條小河。我聞到了草葉氣味,聞到了泥土氣味,還聞到了河...
    冰夫閱讀 226評論 0 0

友情鏈接更多精彩內容