2017-01-06 79 views
1

我使用this guide構建了一個展示臺 - 使用LinkedIn登錄到特定網站。 。 一切工作完美,直到我在廣泛觀衆面前demonstarted它,它打破了:-(這是一個巨大的失敗,我想知道爲什麼這是我做的:LinkedIn,401,無法驗證訪問令牌

1.On符號在頁面的用戶可以點擊一個按鈕Sign in with LinkedIn並被重定向到類似的鏈接:

https://www.linkedin.com/oauth/v2/authorization?redirect_uri=[my_callback]&client_id=[my_client_id]&response_type=code&state=[securely_random]&scope=r_basicprofile%20r_emailaddress 

2.用戶允許應用程序和my_callback

3.In my_callback我發表的帖子中https://www.linkedin.com/oauth/v2/accessToken被送回在o獲取訪問令牌。我使用LinkedIn發送的代碼,正確的客戶端ID和密碼。一切都OK,如反應可能是:

{ 
    "access_token": [access_token], 
    "expires_in": 5184000 
} 

4.I使驗證請求,從端點https://www.linkedin.com/v1/people/~:(firstName,lastName,email_address)

頭獲取配置文件數據:

x-li-format: json  
Authorization: Bearer [access_token] 

我開始偶爾出現錯誤401,例如:

{ 
    "errorCode": 0, 
    "message": "Unable to verify access token", 
    "requestId": "YX21AN6NZG", 
    "status": 401, 
    "timestamp": 1483732371224 
} 

看來,不過一些隨機通過請求......

其他細節:

  • user在LinkedIn登錄
  • 用戶是管理員爲LinkedIn應用
  • 我有檢查應用程序中的限制(節流限制)。可在https://www.linkedin.com/developer/apps。可以看到的一切都是綠色的。
  • 我已經嘗試了所有建議和黑客從該question
  • 我的應用程序不活

我不解!

問題:任何明顯的錯誤?

問題:有限制特定用戶/應用程序組合的訪問令牌數量的隱藏油門限制(或安全工具)嗎? (我總是使用相同的用戶,我測試的大失敗之前相當積極)

UPDATE:在未來兩天登陸順利開工再次合作,如上所述。沒有401-s了......:-X我沒有改變代碼庫。那麼這是某種油門限制,還是星期五LI只是心情不好?

回答

1

如果有人好奇我得到的回答我的問題,從李的支持:

不幸的是,我們真的不能與API的問題和第三方應用程序幫助。我的猜測是星期五有一個呃逆,你是時間不好的受害者。

我承認我是一個受害者所以這個回答我的問題的解釋...

+3

你很容易被說服:D –

+0

同意,奇怪它被標記爲答案。 – Dennis

0

我有一個訪問令牌的工作通過API來獲取數據,但現在它已停止工作。我仔細閱讀了LinkedIn的文檔:https://developer.linkedin.com/docs/oauth2,並提出了爲什麼會發生這種情況。

文檔狀態表明用戶的會話與訪問令牌鏈接。因此,註銷會話意味着訪問令牌失效。這是有道理的,因爲這正是我看到的情況。

oauth2 expired-at只是這個訪問令牌有效的最終時間的時間戳。但它顯然可以在任何時候失效。

其他oauth2實現顯示刷新訪問令牌的功能,Linkedin不提供此功能。因此用戶必須每次都手動刷新它。不知道這是否是由設計,或他們還沒有得到它。總體而言,他們的API感覺非常過時。