添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
```用户的唯一标识,智城云系统内部用户唯一标识,32位随机字符串``` > **OpenKey** ```每次用户登录后会返回的有效密钥,每次会话中有效,有效期72小时,超过有效期需要重新进行鉴权。``` > **ApplicationId** ```开发者的应用ID,不同的应用ID有独立的用户系统,比如相同的手机号可以在不同的应用下分别注册,应用ID可以在开发者个人中心中找到``` > **ApplicationKey** ```应用Key,平台会分配给每一个应用一个单独的Key,平台会根据应用ID来判断请求是否是正确的,应用Key可以在开发者个人中心中找到``` # 命名规范 OpenAPI采用标准的[Restful规范](http://www.ruanyifeng.com/blog/2014/05/restful_api.html)定义接口 HTTP请求的几大关键要素: - 请求协议 包括安全的和非安全的协议,安全的一般为:HTTPS,非安全的为:HTTP - 请求主机域名 请求的域名,决定请求哪种环境,例如:api.machtalk.net,test.api.machtalk.net - 请求地址 请求的相对路径,类似 /v1/user,请求地址一般为名词 - 请求头信息 头信息包括标准的头信息,如:Accept-Language,Keep-Alive等,智城云的标准开放参数也放在头信息中,如openid,openkey,applicationid,applicationkey,开放参数统一使用小写。注意Content-Type头信息对于文本型的请求统一使用application/json - 请求方式 请求方式包括四种:GET,POST,PUT,DELETE;标识请求的操作类型 | 请求方式 | 含义 | | --- | --- | | GET | 获取资源 | | POST | 增加资源 | | PUT | 修改资源 | | DELETE | 删除资源 | ## **OpenAPI命名规范** > - 使用有含义的英文单词 > - API中包含版本号 > - 使用请求方式决定操作类型,而不是将操作类型放在API地址上 > - 同一模块尽量使用相同的层级,比如用户模块使用/v1/user/XX/YY,保证可读性 > - API的参数会进行业务校验 # 接口的输入和输出 OpenAPI的输入与输出都是JSON,提交的参数以流的形式传参给服务器,服务器会把每个请求都理解为JSON字符串 智城云OpenAPI采用标准的Restful接口风格,标准的文本类接口的content-type使用application/json,**输入和输出均使用标准的JSON格式**,对于文件上传的接口的content-type使用multipart/form-data,对于文件下载的接口的content-type使用application/octet-stream **设备输入的参数长度不能超过2K** # 接口安全规范 > 接口请求,必须保证每次请求的安全合法,智城云OpenAPI使用SHA1对请求信息进行运算得到一个摘要进行请求的签名 智城云OpenAPI分为两类API:**需要用户鉴权的**和**不需要用户鉴权的** * 不需要用户鉴权的:例如用户信息重复性检查,发送验证码,获取验证码凭证等,具体的可以看参数说明,不需要用户鉴权的加密方法为:SHA1\(HTTPMethod+RequestURI+params+applicationkey\) * 需要用户鉴权的:例如查看用户信息,修改密码等,具体的可以看参数说明,需要用户鉴权的加密方法为:SHA1\(HTTPMethod+RequestURI+params+ts+openkey+applicationkey\) ## 接口限制 > 平台的接口调用并不是无限制的。为了防止开发者号的程序错误而引发服务器负载异常,默认情况下,每个应用调用接口都不能超过一定限制,当即将超过一定限制时,调用对应接口会收到错误码,同时会发送告警邮件给企业负责人和平台运维人员,基本的访问限制规则为每小时默认允许每小时调用接口4000次,超过阈值则抛错,1小时后恢复接口调用。 > 对于接口请求的IP如果超过一定限制也会放入请求黑名单,同时提供告警 > 平台会统计接口响应速度报表,提供接口服务质量依据