2017-09-05 86 views
0

所以我測試的REST API的通過超級給實現尤伯杯服務爲我的應用程序,而將請求發送到他們的API之一,它向我發送響應按摩:添加的OAuth的REST API測試

{ 
    "message": "No authentication provided.", 
    "code": "unauthorized" 
} 

而IAM做同樣的請求,因爲他們doc

請求IAM創建給出: 頭:

Authorization: Bearer <TOKEN> 
Accept-Language: en_US 
Content-Type: application/json 

到URL https://api.uber.com/v1.2/me

哪裏出錯了,還需要補充什麼?

回答

0

爲了能夠使用任何Uber API端點,您需要授權您的用戶並獲取access_token。從您的示例代碼中,我們可以看到您沒有按照優步文檔中的說明進行操作。因此,爲確保您遵循完整身份驗證流程,請按以下步驟查找以下信息:

授權碼流是一個兩步授權流程。第一步是讓用戶授權您的應用程序,第二步是向Uber請求OAuth 2.0訪問令牌。如果您想代表用戶執行操作或訪問其信息,則此過程是強制性的。 重定向URL「YOUR_REDIRECT_URI」是我們將在資源所有者授權後重定向回的URL。 URI的基礎必須與註冊應用程序期間使用的redirect_uri相匹配。如果沒有提供,則默認值爲應用程序儀表板中提供的第一個重定向URI。

「YOUR_LIST_OF_SCOPES」是您在授權選項卡中請求的範圍列表。根據您想要實現的目標以及您想要創建的API調用 - 您需要在兩步授權過程中使用特定範圍。您可以使用多個作用域作爲逗號分隔列表。

請按照認證指南的步驟操作。

簡而言之,您需要:

•發送用戶授權網址。它首先將用戶重定向到授權端點:https://login.uber.com/oauth/v2/authorize?client_id=YOUR_CLIENT_ID&response_type=code&redirect_uri=YOUR_REDIRECT_URI&scope=YOUR_LIST_OF_SCOPES

•使用授權碼接收重定向。在用戶批准範圍之後,用戶將被重定向到帶有認證碼的redirect_uri,您可以將其發佈到/ v2/token端點以接收訪問令牌。

•進行POST調用:'https://login.uber.com/oauth/v2/token'。該調用將返回access_token和refresh_token。

•獲得access_token後,您可以在API的端點使用它