单点登录接口

October 21, 2022About 2 min

单点登录接口

接口描述

根据我方提供的appId、secretKey ,以及用户在贵方系统的唯一标志uid,来自动登录到写作猫。

获取appId与secretKey

请您通过扫描如下企业微信二维码申请单点登录所需的appId以及secretKey:

签名算法

  • 第一步:假设所有需要发送的数据为集合 M,将集合 M 内非空参数值按照参数名称 ASCII 码从小到大排序,使用 URL 键值对的格式(即 key1=value1key2=value2…)拼接成字符串 stringA。 特别注意以下重要规则:
    ◆ 参数名 ASCII 码从小到大排序(字典序);
    ◆ 如果参数的值为空不参与签名;
  • 第二步:在 stringA 最后拼接线下颁布的密钥 secretKey 得到 stringSignTemp 备用字符串。
  • 第三步:对 stringSignTemp 进行 SM3 摘要运算,得到 sign 值即可。

URL

https://xiezuocat.com/api/open/login

HTTP Method

GET

HTTP 请求参数

p: base64({uid:'xxx',appId:'yyy',nickName:'aaa',timestamp:1666088547829,sign:'bbb'})

说明:

​ 本接口的实际参数p,是将appId,uid,nickName,timestamp通过签名算法 的到sign值,然后再将uid、appId、nickName、timestamp、sign构成一个json再进行base64编码得到的结果。

内含参数名
说明
可选/必选
uid
该用户在贵方系统的唯一标志
必选
appId
标志贵方的唯一标志、联系秘塔客服获取
必选
nickName
用户的昵称(该用户第一次登录写作猫时会采用该nickName作为初始值,如果不传则按照默认规则生成昵称)
可选
timestamp
当前时间戳(毫秒)
必选
sign
通过签名算法将参数进行加密后的结果。
必选

单点登录URL示例

https://xiezuocat.com/api/open/login?p=eyJzaWduIjoiMjNkZDA2ZDJjOWUyN2M1MGY2OWQyMTU2MGY5ZWZhY2I2NTRiMTg4MWRkNjZhNjE3ZTViYzJmZGUxMTJkZjA2NiIsInVpZCI6ImEiLCJhcHBJZCI6Inh4eCIsInRpbWVzdGFtcCI6IjE2ODA1MDIwMzQ1MzYifQ

写作猫官方在 GitHub 上提供 JAVA SDKopen in new windowJavaScript SDKopen in new windowPython SDKopen in new window,能让你轻松使用 JAVA、JavaScript 和 Python 语言调用单点登录签名算法。

Last update:
Contributors: liulin