如何生成 Instagram 訪問令牌

已發表: 2022-03-08

您實際上可以更快地發展您的業務,讓您的用戶通過他們的個人資料信息登錄到您的應用程序。 這對客戶和您來說都是雙贏的。 這是因為您的用戶只需單擊一下即可訪問或登錄您的應用程序或服務,並且您可以獲得他/她的所有詳細信息,例如電子郵件和姓名。

還有什麼比這更好的收集潛在客戶的方法? 在 Instagram 訪問令牌的幫助下,您的客戶可以代表您請求向您提供他/她的詳細信息。 如果您使用的是 WooCommerce,則可以使用此方法收集用戶詳細信息。

但是如何收集 Instagram 訪問令牌? 在本文中,我們將向您展示獲取 Instagram 訪問令牌的簡單方法。 所以,坐好,繼續前進!

方法一:為非開發者獲取 Instagram 訪問令牌

如果您沒有任何編程知識,請遵循此方法:

導航到 developer.facebook.com。 接下來,單擊我的應用程序。

Navigate to developer.facebook.com.

現在,選擇“創建應用程序”。

Create App

選擇其他所有內容:

Create an App ID

填寫應用程序顯示名稱、應用程序聯繫人電子郵件並點擊“創建應用程序 ID”按鈕。

Click Create App ID Button

接下來,單擊“添加平台”按鈕:

Click Add Platform

選擇您的平台。 在這種情況下,我們選擇“網站”。

Select website

提供您的網站 URL 並保存更改:

8 site url

現在,轉到產品選項:

Go to the products option

現在,從 Instagram 基本顯示中選擇“設置”:

Set Up

現在,一直向下滾動到“創建新應用程序”。

Create New App

您將看到一個彈出窗口。 您需要做的就是提供一個顯示名稱並點擊“創建應用程序”按鈕。

Click Create App Button

現在,將您的網站 URL 提供給以下字段並確保保存更改:

Client OAuth Settings

轉到Roles-> Roles選項並選擇“ Add Instagram Testers ”選項:

Add Instagram Testers

提供您的 Instagram 用戶名 URL:

Add Instagram Testers

現在登錄到您的 Instagram 個人資料,然後轉到Edit Profile > Apps and Websites> Tester Invites 。 您將能夠看到邀請。 確保接受邀請:

Instagram access token

現在,轉到developer.facebook.com > Products > Instagram Basic Display > Basic Display > User Token Generator > 點擊Generate Token ”按鈕:

Instagram access token

繼續使用您的帳戶:

Instagram access token

再次點擊繼續:

Instagram access token

瞧! 這是您的 Instagram 訪問令牌:

Instagram access token

如果您是開發人員並想要創建 Instagram 訪問令牌,請繼續執行方法 2。

HappyAddons Pro Banner 970X90

方法 2:創建 Instagram 訪問令牌(針對開發人員)

按著這些次序:

第 1 步:獲得授權

Instagram 會將您的用戶重定向到您的應用,並在用戶登錄並選擇允許您的應用訪問哪些數據後立即包含授權代碼。 使用此授權代碼,您將能夠交換短期訪問令牌。

要開始該過程,您需要找到授權窗口並將其顯示給用戶:

 https://api.instagram.com/oauth/authorize
  ?client_id={instagram-app-id}
  &redirect_uri={重定向uri}
  &範圍={範圍}
  &response_type=代碼
  &state={state} //可選

查詢字符串參數

state外的所有參數都是必需的。

範圍樣本值描述
client_id
必需的
數字字符串
990602627938098 您的 Instagram App ID 顯示在App Dashboard > Products > Instagram > Basic Display中。
redirect_uri
必需的
細繩
https://socialsizzle.herokuapp.com/auth/ Instagram 將在用戶允許或拒絕權限請求後重定向用戶的 URI。 您必須確保此 URI 與有效 oAuth URI 列表中的基本 URI 之一完全匹配。 請注意,Instagram 建議您通過檢查列表進行驗證,因為 App Dashboard 可能已在您的 URI 中添加了尾部斜杠。
response_type
必需的
細繩
code 將此值設置為code
scope
必需的
逗號或空格分隔的列表
user_profile,user_media 從應用程序用戶請求的權限的逗號分隔列表或 URL 編碼的空格分隔列表。 user_profile是必需的。
state
細繩
1 可選值指示特定於服務器的狀態。 例如,您可以使用它來防止 CSRF 問題。 將用戶重定向回您時,Instagram 將包含此參數和值。

示例授權窗口 URL

 https://api.instagram.com/oauth/authorize
  ?client_id=990602627938098
  &redirect_uri=https://socialsizzle.herokuapp.com/auth/
  &scope=user_profile,user_media
  &response_type=代碼

授權成功

如果授權成功,Instagram 會將您的用戶重定向到您的 [ redirect_uri ]。 之後,Instagram 將通過查詢字符串參數[code ] 向您傳遞一個授權碼。 您需要做的就是捕獲代碼,以便您可以讓您的應用程序將其交換為臨時的 Instagram 用戶訪問令牌。

請注意,授權碼有效期為 1 小時,您只能使用一次。

這是一個成功的身份驗證重定向示例

 https://socialsizzle.herokuapp.com/auth/?code=AQBx-hBsH3...#_

請注意,雖然#_將附加到重定向 URI 的末尾,但它不屬於代碼本身,因此您可以將其刪除。

取消授權

並非總是用戶會完成授權流程。 如果用戶未完成授權跟隨,Instagram 會將您的用戶重定向到redirect_uri並附加以下錯誤參數。

在這種情況下,您可以向用戶顯示適當的消息。

範圍價值
error access_denied
error_reason user_denied
error_description The+user+denied+your+request

取消授權重定向示例

https://socialsizzle.herokuapp.com/auth/?error=access_denied
  &error_reason=user_denied
  &error_description=The+user+denied+your+request

第 2 步:將代碼換成代幣

當您收到代碼時,您需要將其換成臨時訪問令牌。 您只需將POST請求發送到以下端點即可:

 發布 https://api.instagram.com/oauth/access_token

車身參數

現在您必須在 POST 請求正文中包含以下參數。

範圍樣本值描述
client_id
必需的
數字字符串
990602627938098 您的 Instagram App ID 顯示在App Dashboard > Products > Instagram > Basic Display中。
client_secret
必需的
細繩
a1b2C3D4 您的 Instagram App Secret 顯示在App Dashboard > Products > Instagram > Basic Display中。
code
必需的
細繩
AQBx-hBsH3... 當將用戶重定向到您的redirect_uri時,授權代碼 Instagram 會在code參數中傳遞給您。
grant_type
必需的
細繩
authorization_code 將此值設置為authorization_code
redirect_uri
必需的
細繩
https://socialsizzle. heroku.com/auth/ 當您將用戶定向到我們的授權窗口時傳遞給我們的重定向 URI。 這必須是相同的 URI,否則 Instagram 將拒絕該請求。

樣品請求

捲曲-X POST \
  https://api.instagram.com/oauth/access_token \
  -F client_id=990602627938098\
  -F client_secret=eb8c7...\
  -F 授權類型=授權代碼\
  -F redirect_uri=https://socialsizzle.herokuapp.com/auth/ \
  -F 代碼=AQBx-hBsH3...

示例成功響應

給你! 如果響應成功,API 將返回一個 JSON 有效負載,其中包含應用用戶的短期訪問令牌和用戶 ID。

 {
  "access_token": "IGQVJ...",
  “user_id”:17841405793187218
}

現在您獲得了訪問令牌,您可以輕鬆捕獲access_token值。 通過使用這個短暫的 Instagram 用戶訪問令牌,您可以允許您的應用訪問 Instagram 基本顯示 API 端點。

樣本拒絕響應

如果請求格式錯誤,API 將返回錯誤。

 {
  "error_type": "OAuthException",
  “代碼”:400,
  "error_message": "未找到匹配代碼或已使用"
}

結論

我們希望本文能幫助您以最簡單的方式獲取 Instagram 訪問令牌。 如果您認為有更簡單的方法,請不要猶豫與我們分享,以便我們都能從中受益。 提前致謝!

相關主題:了解如何在您的 WordPress 網站上添加 Instagram 提要。

Instagram 動態

禮貌:developer.facebook.com,