刷新免密链接的免登录票据

调用RefreshToken接口刷新免登录票据的访问令牌。

前提条件

  • 开通日志服务

  • 已安装Python、Python开发环境(例如PyCharm)和Python的包管理工具pip

    • 日志服务Python SDK新版支持Python3.7及以上版本。

    • 您可以执行python -V命令检查已安装的Python版本。

    • 您可以执行pip3 -V命令检查您已安装的pip版本。

  • 已安装日志服务Python SDK新版。

    • 在命令行工具中,执行如下命令完成安装。

      pip install alibabacloud_sls20201230==5.4.1
    • 安装SDK新版后,执行如下命令进行验证。

      pip show alibabacloud_sls20201230
  • 已配置环境变量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET。具体操作,请参见Linux、macOSWindows系统中配置环境变量

参数说明

def refresh_token(
        self,
        request: sls_20201230_models.RefreshTokenRequest,
    ) -> sls_20201230_models.RefreshTokenResponse:

请求参数

名称

类型

是否必填

描述

示例值

ticket

str

免登录票据。通过CreateTicket接口获取的未过期的免登录票据。

eyJ***************.eyJ******************.KUT****************

accessTokenExpirationTime

int

访问令牌过期时间(秒)。默认 86400 秒(一天),最大 86400 秒(一天)。

86400

返回参数

返回参数说明请参见RefreshToken - 刷新令牌

示例代码

import os

from alibabacloud_sls20201230.client import Client as Sls20201230Client
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_sls20201230 import models as sls_20201230_models
from alibabacloud_tea_util.client import Client as UtilClient


def main():
    config = open_api_models.Config(
        # 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。,
        access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
        # 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。,
        access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
    )
    # 日志服务的服务接入点
    config.endpoint = "cn-shanghai.log.aliyuncs.com"
    client = Sls20201230Client(config)

    refresh_token_request = sls_20201230_models.RefreshTokenRequest()

    # 必填,免登录票据过期时间
    access_token_expiration_time = 86400
    # 必填,免登录票据
    ticket = "eyJ***************.eyJ******************.KUT****************"
    refresh_token_request = sls_20201230_models.RefreshTokenRequest(access_token_expiration_time, ticket)

    try:
        refresh_token_response = client.refresh_token(refresh_token_request)
        print(refresh_token_response)
    except Exception as error:
        print(error.message)
        print(error.data.get("Recommend"))
        UtilClient.assert_as_string(error.message)


if __name__ == '__main__':
    main()

示例返回结果

{'headers': {'content-type': 'application/json', 'content-length': '273', 'connection': 'keep-alive', 'access-control-allow-origin': '*', 'date': 'Wed, 30 Oct 2024 05:57:27 GMT', 'server': 'Tengine', 'vary': 'Accept-Encoding', 'x-log-time': '1730267847', 'x-log-requestid': '6721CAC7B7747C1DE84490DA'}, 'statusCode': 200, 'body': {'accessToken': 'eyJ0eXAiOiJKV1eftnukiQiLCJhbGcI1****.eyJhY2Nabflc3NUb2klkIjoiYTA3NTlhMDktYjFhOS00YjY3LWE3MmQtOWI4NzIxZTFiY2M1IiwidHlwZSI6ImVtYmVkZGVkIiwiZXhwIjoxNzerthbd4NDQ3LCJub25jZSI6MTczMDI2Nzg0NzI4OCwiaWF0IjoxNzMwMjY3OD****.8xF6muCtlhncRTk3fLUvu6gc4TQRv-6swVAAgpH8Pn0'}}

Process finished with exit code 0

相关文档