跳轉至

呼叫登入頁面

網頁登錄是一項允許用戶通過網頁登錄到身份提供者(IdP)的功能。

登入頁面呼叫 是一個API,返回一個臨時身份驗證碼(state)以及用戶可以登錄到IdP的Hive網頁登錄URL地址。

在请求 登录页面调用 API后,当用户在被调用的登录页面完成网页登录时,通过请求时提供的重定向URI返回一个临时认证代码(state)。临时认证代码(state)是进行登录验证和用户信息检索 API请求时必须提供的参数。

請求 URL

環境 URL
生產環境 https://weblogin.withhive.com/login?param=
沙盒環境 https://sandbox-weblogin.withhive.com/login?param=
HTTP 方法 GET
內容類型 text/html

請求查詢參數

欄位名稱 類型 描述 必需
param 字串 通過對下面的 JSON 對象進行 URL 編碼和 BASE64 編碼生成的字串。

請求查詢參數 JSON 結構 (param)

字段名称 类型 描述
appid 字符串 应用程序 ID
url 字符串 登录完成后重定向的 URI 地址。它必须与 Hive 控制台中注册的 重定向 URI 匹配 身份验证 > 身份验证设置 > 登录设置。如果不匹配,将显示 2012 错误页面。
client_id 字符串 在安全密钥设置中创建的 OAuth 2.0 客户端 ID。您可以在 Hive 控制台 应用中心 > 安全密钥设置 中查看。
response_type 字符串 OAuth 2.0 授权方法。默认: code
country 字符串 在游戏或社区中设置的国家代码(如果未提供,则使用浏览器默认值)
language 字符串 在游戏或社区中设置的语言代码(如果未提供,则使用浏览器默认值)

請求查詢參數 JSON (param) 範例

請求查詢參數 JSON (param) 由如下所示的 JSON 對象組成。

{
  "appid": "com.com2us.hivesdk.ios.community.global.normal",
  "url": "https://community.withhive.com/hivesdk/login/redirect",
  "client_id": "58b48cd3-df47-5b52-2627-3f9c8d01",
  "response_type": "code",
  "country": "KR",
  "language": "ko"
}

此 JSON 对象在 API 调用期间按以下顺序转换为字符串,并用作 param 查询参数。

  1. URL 编码
  2. BASE64 编码
# 인코딩된 param을 붙여 호출하는 URL 예시
https://weblogin.withhive.com/login?param=JTdCJTIyYXBwaWQlMjIlM0ElMjJjb20uY29tMnVzLmhpdmVzZGsuaW9zLmNvbW11bml0eS5nbG9iYWwubm9ybWFsJTIyJTJDJTIydXJsJTIyJTNBJTIyaHR0cHMlM0ElMkYlMkZjb21tdW5pdHkud2l0aGhpdmUuY29tJTJGaGl2ZXNkayUyRmxvZ2luJTJGcmVkaXJlY3QlMjIlMkMlMjJjbGllbnRfaWQlMjIlM0ElMjI1OGI0OGNkMy1kZjQ3LTViNTItMjYyNy0zZjljOGQwMSUyMiUyQyUyMnJlc3BvbnNlX3R5cGUlMjIlM0ElMjJjb2RlJTIyJTJDJTIyY291bnRyeSUyMiUzQSUyMktSJTIyJTJDJTIybGFuZ3VhZ2UlMjIlM0ElMjJrbyUyMiU3RA==

回應行為

  • 回應結果為 HTTP 302 重新導向。
  • 瀏覽器會被重新導向到 Location 標頭中設定的 URI,並將 res 查詢參數添加到該 URI。
  • res 是一個 URL 編碼和 BASE64 編碼的 JSON 字串。

重定向位置 URI 示例

# https://community.withhive.com/hivesdk/login/redirect를 리다이렉트 URI로 설정한 경우
https://community.withhive.com/hivesdk/login/redirect?res=JTdCJTIyY29kZSUyMiUzQSUyMjEwMCUyMiUyQyUyMnN0YXRlJTIyJTNBJTIyMTY4ODEwODkyNzk0Mi1CUHVxcHFFaUd6S0lIJTIyJTdE

回應查詢參數 (res)

res 是經過 URL 編碼和 BASE64 編碼後轉換為字符串的值,包含一個 JSON 對象,其鍵值如下所示。

欄位名稱 類型 描述
code 字串 網頁登入回應代碼
如果不成功,將重定向到包含錯誤代碼的網頁登入錯誤頁面。
state 字串 用於請求令牌發行的臨時授權碼 (authorization_code)。

回應查詢參數 回應代碼

代碼 描述 備註
100 成功
1050 參數無效
1051 URL 解碼錯誤
1052 BASE64 解碼錯誤
1053 參數值無效 ?param= 的值
2005 異常請求值
2011 沒有項目信息
2012 重定向 URI 不匹配 必須與 Hive 控制台中註冊的 重定向 URI 匹配 身份驗證 > 身份驗證設置 > 登錄設置
2013 項目處於終止狀態
2016 沒有應用 ID 信息
2018 沒有公司信息
2020 臨時身份驗證碼 (state) 發放失敗
2022 臨時身份驗證碼 (state) 儲存失敗
7000 OAuth2.0 安全金鑰未生成 請在 Hive 控制台中檢查 應用中心 > 安全金鑰設置
7003 沒有 OAuth2.0 客戶端信息

回應查詢參數範例 (res)

要再次使用 res 作为 JSON 对象,您需要执行 BASE64 解码和 URL 解码的反向操作。下面显示了一个 JSON 对象的示例。

{
  "code": "100",
  "state": "1627881984263-jkx1B3GOY3EsJ"
}