AI写作智能体 自主规划任务,支持联网查询和网页读取,多模态高效创作各类分析报告、商业计划、营销方案、教学内容等。 广告
# 获取access_token(含代码示例) **简要描述** - 调用该接口获取 access_token **注意事项(`必读`)** - access_token 是小鹅通开放api的全局唯一接口调用凭据,店铺调用各接口时都需使用 access_token ,开发者需要进行妥善保管; - 建议店铺开发者使用中控服务器统一获取和刷新 access_token ,其他业务逻辑服务器所使用的 access_token 均来自于该中控服务器,不应该各自去刷新,否则容易造成冲突,导致access_token 覆盖而影响业务; - access_token的有效期目前为`2小时(7200秒)`,需定时刷新。重复获取将导致上次获取的 access_token 在`5分钟`之后失效。 在刷新过程中,中控服务器可对外继续输出老的 access_token,在`5`分钟内,新老 access_token 都可用,确保第三方业务能够平滑过渡; - 获取 access_token 的接口调用是有频率限制的,该接口的频率是`10分钟100次`,超出请求次数该接口须等下个10分钟才可以恢复调用。 - 为了提高API接口的安全性,只有在ip白名单里面的ip,才能成功获取到access_token,否则拒绝访问。因此,调用接口前,请在[云服务控制台](https://admin.cloud.xiaoe-tech.com/#/account)中提前将服务器的ip添加到白名单中。 **请求方式及url:** - 请求方式:`GET` - 接口地址:`https://api.xiaoe-tech.com/token ` - 请求头:`Content-Type:application/json` - 频率限制:`10分钟100次` **请求参数** |参数名|必选|类型|说明|备注(示例) |:---- |:---|:----- |:----- |----| |app_id |是 |string |店铺的业务id |`...`| |client_id |是 |string |应用的唯一标识,通过 client_id 来鉴别应用的身份 |在[云服务控制台](https://admin.cloud.xiaoe-tech.com/#/account)获取| |secret_key |是 |string | 应用的凭证秘钥,即client_secret,用来保证应用来源的可靠性,防止被伪造 |在[云服务控制台](https://admin.cloud.xiaoe-tech.com/#/account)获取| |grant_type |是 |string | 固定填写client_credential |`...`| `注意:2019.12.9以前开通了API服务的商家,可以继续使用app_id+secret_key的方式获取access_token。后来开通的商家` `请统一按照app_id+client_id+secret_key的方式获取` **请求示例** ``` { "app_id": "appxxxxxxxxxxx", "client_id": "xopxxxxxxxxxx", "secret_key": "xxxxxxxxxxxxx", "grant_type": "client_credential" //获取token时, grant_type = client_credential } ``` **返回示例** - 正确示例 ``` { "code": 0, "msg": "success", "data": { "access_token": "N2M5MGYXZWITMZIWMY0ZMWE1LTK3YJMTNGY2ZTQXODHINTK3", "expires_in": 7200 } } ``` - 错误示例 ``` { "code": 2001, "msg": "invalid secret_key", "data": null } ``` **返回参数** |参数名|必选|类型|说明|备注 |:----- |:----|:-----|:-----|---- | |access_token |是|string |凭证 |`...`| |expires_in |是|int |过期时间,单位秒 |`...`| **备注** - 错误码请查看[全局返回码](/common_problem/code.md)。 ## 获取access_token示例(php示例) ```php class TokenManage { ... const URL = "https://api.xiaoe-tech.com/token"; private $app_id = "appXXXXXXXXXX"; // 店铺的业务id private $client_id = "xopXXXXXXXXXX"; // 应用的唯一标识 private $secret_key = "XXXXXXXXXX"; // 应用的凭证秘钥 private $grant_type = "client_credential"; public function requestToken(){ $params = [ "app_id" => $this->app_id, "client_id" => $this->client_id, "secret_key" => $this->secret_key, "grant_type" => $this->grant_type ]; // 发起请求 $result = Http::curlGet(self::URL, $params); if (!empty($result['body']) && $result['body']['code'] == 0) { $this->writeFile($result['body']['data']); return $result['body']['data']['access_token']; } return false; } ... } ``` ## 获取access_token Demo下载(包含Go、PHP、Java、Python等) 获取access_token 的Demo:[Github链接](https://github.com/xiaoeteam/XiaoeApiSDK)