基於Spring的新浪微博第三方登入實現

2021-07-31 20:17:22 字數 1635 閱讀 6784

在《github第三方登入--通用化的第三方登陸實現》中我們實現了乙個通用化的第三方登入框架,其中包括oauth的基本流程以及最簡單的使用者註冊。但是不同的第三方登入因為其細節不同還是有很多坑的,今天我們就從完善開發者資訊開始一步一步新增微博第三方登入的功能。

注意,需要完成微博的第三方登入功能需要有乙個網域名稱以及修改該網域名稱**的許可權,之後審核時需要對首頁進行修改。這裡我們假設我們的網域名稱是tianmaying.com。

我們可以看到,如果需要新增第三方應用只需要完善基本資訊,但是需要注意的是,如果你新增了微博第三方登入功能後需要通過其審核,仍然需要通過【身份認證】。這裡我們只需要完善【基本資訊】即可。

我們需要驗證的是我們是否對於**擁有所有者許可權,需要修改網域名稱相對應的網頁上新增一行**,按要求進行修改即可。

驗證通過後,我們就可以在本地進行第三方登入的測試了。

《github第三方登入--通用化的第三方登陸實現》一文中已經完成了乙個通用化第三方登入的框架,如果想對通用化第三方登入的實現有所了解,請先閱讀《github第三方登入--通用化的第三方登陸實現》。

按照《github第三方登入--通用化的第三方登陸實現》,我們需要為weibo新增兩個類,sinaweiboapi以及sinaweibooauthservice,但是sinaweiboapi在scribe中已經提供了,我們直接使用即可。接下來我們來新增sinaweibooauthservice

public class sinaweibooauthservice extends oauthservicederactor 

@override

public oauthuser getoauthuser(token accesstoken)

}

@configuration

public class oauthconfig

}

由於微博的第三方登入是與網域名稱相繫結的,因此我們需要我們的hosts檔案,將本地127.0.0.1繫結到tianmaying.com即可。

windows系統hosts檔案一般在c:\windows\system32\drivers\etc

127.0.0.1       tianmaying.com
進入根目錄,執行sudo mvn spring-boot:run命令,訪問 (之前填寫應用資訊以及修改hosts時所填寫的網域名稱,這三個網域名稱必須一致),由於必須通過網域名稱進行訪問,所以我們需要監聽80埠,執行時需要超級管理員許可權。

新浪微博的布局

import mjtabbaritem.h implementation mjtabbaritem id initwithframe cgrect frame itemdesc mjtabbaritemdesc desc return self pragma mark 覆蓋父類的2個方法 pragm...

第三方授權登入 新浪微博 授權

目錄2.生成微博授權url介面 3.測試生成微博售前url介面 2.2 新增子路由 oauth urls.py from django.urls import path from import views urlpatterns 2.3 在syl settings.py中新增應用 2.4 在syl ...

實戰新浪微博 騰訊微博的分享功能

算上也是半年前做的,今天翻出來放出來,作為日誌記錄,也許能幫助一些人。我做的大概介面是如下圖。呵呵,上面這些都是些預備工作。下面正式開發。以上就是工程上設定。下面具體 以下處理sina的相關 以下是處理sina的授權驗證函式,qq的未寫。void removeauthdata bool islogg...