跳到主要内容

鉴权认证

Access_token是用户的访问令牌,承载了用户的身份、权限等信息。鉴权主要分为以下两步:

1.获取App ID、App Secret

2.获取Access_token

  • 代码形式→适用于有计算机基础的用户
  • 网页调试工具→适用于零基础的用户

1. 获取App ID、App Secret

(1)平台登录

  1. 打开浏览器,访问平台地址: https://iot.seismi.co/ ,进入登录页面。

  2. 填写登录信息:

    • 输入框填写账号:邮箱;

    • 下方输入框填写登录密码;

  3. 确认信息无误后,点击登录按钮,完成平台登录。

(2)创建应用,登录平台后在应用管理中创建应用

image-20260613151719811

(3)当您成功创建应用后,在应用列表下,可查看已创建的应用。

平台将会分配给您此应用的相关凭证,主要为AppID、App Secret。以上三个信息是您应用实际开发的重要凭证,每个应用各不相同,为了您的财产和服务安全请您妥善保管

image-20260613145143455

2. 获取 Access_token

开放平台使用OAuth2.0授权调用开放API,调用API时必须在URL中带上Access_token参数,Access token默认有效期为30天,获取Access_token的流程如下:

请求URL数据格式

向授权服务地址https://iot.seismi.co/api/oauth2/token发送请求(GET),并在URL中带上以下参数:

  • grant_type: 必须参数,固定为client_credentials
  • client_id: 必须参数,应用的App ID
  • client_secret: 必须参数,应用的App Secret

例如:

https://iot.seismi.co/api/oauth2/token?grant_type=client_credentials&client_id=Va5yQRHlA4Fq5eR3LT0vuXV4&client_secret=0rDSjzQ20XUj5itV6WRtznPQSzr5pVw2

获取Access_token的两种方式

接下来为您提供两种获取Access_token的方法,您可以按照自己的需求进行选择。

方式一:通过代码的形式获取Access_token

以下为您提供示例代码。这里以shell语言为例进行演示。在下方中输入创建应用后获取的App ID、App Secret。

curl https://iot.seismi.co/api/oauth2/token?grant_type=client_credentials&client_id=Va5yQRHlA4Fq5eR3LT0vuXV4&client_secret=0rDSjzQ20XUj5itV6WRtznPQSzr5pVw2

运行后显示的结果如下

  • access_token:要获取的Access Token;

image-20260613150357967

  • expires_in:Access Token的有效期(秒为单位,有效期30天);

image-20260613150425649

  • refresh_token:刷新凭证,用于主动续期访问令牌,延长授权有效期;
  • scope:授权作用域,标识当前请求所拥有的权限范围;
  • session_key:会话标识,为单次会话分配的唯一编号;
  • session_secret:会话密钥,配合会话标识完成会话加密与身份校验。

若请求错误,服务器将返回的JSON文本包含以下参数:

  • error: 错误码;关于错误码的详细信息请参考下方鉴权认证错误码。

  • error_description: 错误描述信息,帮助理解和解决发生的错误。

例如,认证失败返回:

{
"error": "invalid_client",
"error_description": "unknown client id"
}

鉴权认证错误码

errorerror_description解释
invalid_clientunknown client idAPI ID不正确
invalid_clientClient authentication failedAPI Secret不正确

方式二:使用网页调试工具(例如postman)获取Access_token

依次在网页调试工具中输入:

  • grant_type: 必须参数,固定为client_credentials
  • client_id: 必须参数,应用的API Id
  • client_secret: 必须参数,应用的Secret Key

image-20260613150916389

输入完成后,点击send,返回json字符串,获取Access_token。

image-20260613151104355