AOP能力开放平台是以航天云网核心业务为基础的技术开放平台,是AOP的核心套件。AOP能力开放平台致力于为融入航天云网生态圈的企业开发者和个人开发者提供标准化、服务化和集约化的功能接口(Open API),使各类应用能够高效、便捷、安全地接入航天云网,实现与云网的融合发展。接入企业与个人能够在第一时间使用航天云网开放的各类业务功能,分享云网资源,发掘个体价值,与航天云网携手实现“信息互通、资源共享、能力协同、开放合作、互利共赢”的美好愿景。
AOP能力开放平台对航天云网的核心业务功能与数据调用功能进行了标准化封装,经过认证的开发者可以通过URL调用权限允许的功能接口,使用云网开放业务资源与数据资源。
AOP能力开放平台由一套Open API、一个Web应用门户及一个Web管理后台构成:
Open API是对航天云网开放业务功能与数据调用的封装,每一个基础功能被封装成一个Open API,认证开发者可通过其URL采用POST消息进行调用,输入输出参数均采用JSON格式进行交换。
Web应用门户面向企业/个人开发者提供开发者注册、申请、登陆、证书查看、信息维护等用户功能,同时也是发布与展示API接口与技术文档的平台。
Web管理后台面向系统管理员,提供系统管理、API资源管理、参数配置、用户管理、安全监测等功能,满足开发者审核、API接口发布、平台使用情况监控等业务需求。
AOP能力开放平台对航天云网开放业务功能与数据调用进行了标准化与服务化封装:
能力开放平台将航天云网七类核心业务封装成Open API,包括:用户中心、云协作中心、工业品商城、金融物流、合同管理、云资源中心、运营平台。
此外,为开发者能够更便捷地使用Open API,能力开放平台还将OAuth认证授权及其他工具类功能封装成Open API。
面向七类核心业务,能力开放平台还对相应的数据调用接口进行了标准化封装,包括:用户中心的用户/企业数据、工业品商城的商品/优选/订单数据、云协作中心的能力/需求/优选/订单数据、金融物流业务的支付/款项/物流/征信数据、合同管理业务的模板/合同数据、云资源中心的软件/标准/专利/专家数据、运营平台的状态/流量/计费数据等。
AOP能力开放平台面向开发者和管理员两类用户:
开发者是Open API的使用者,调用Open API分享航天云网开放的各类功能与数据,与自身业务相结合开发应用系统或模块,通过能力开放平台集成到航天云网生态圈。
开发者分为三类:个人开发者、普通企业开发者及云网企业开发者。
Web应用门户为开发者提供以下功能:开发者注册、申请、登陆、证书查看、信息维护。
此外,为开发者能够更便捷地使用Open API,能力开放平台还将OAuth认证授权及其他工具类功能封装成Open API。
管理员是能力开放平台的管理者,拥有开发者审核、API接口发布、平台使用情况监控等权限。
Web管理后台为管理员提供系统管理、API资源管理、参数配置、用户管理、安全监测等功能。
申请成为能力开放平台开发者的步骤如下:注册→填写申请资料→管理员审核→颁发应用证书。
点击Web应用门户首页右上角的【免费注册】进入注册页面:
填写用户名、密码,勾选《用户注册协议》以后,单击【立即注册】按钮即可查看注册结果。在此之前,系统将会自动校验用户名是否存在以及密码设置是否合理。
注册成功后,用刚申请的用户名和密码登录,首次登录将自动跳转到控制台,用户选择开发者类型并填写申请资料。其中,带“*”的选项是必填项。
管理员收到用户申请资料后,会在管理后台进行审核,用户可以在控制台的【应用证书】页面查看审核结果。
管理员审核并授权后,用户便成为了经过认证的开发者用户,可在控制台的【应用证书】页面查看应用证书(由系统分配的App key和App secret组成)。
需要特别注意的是,应用证书是调用Open API的凭证,需妥善保管,不要轻易透露给他人。
身份认证信息审核通过后,则可以根据需要申请不同的应用标签,同样需要后台审核,审核通过后则可以调用相应应用标签下的API
另外,可以查询自己已拥有的应用标签和申请中的应用标签。
成功成为认证开发者后,便可在应用系统开发过程中调用权限允许的Open API。每一个Open API均可通过其URL采用POST消息进行调用,输入输出参数均采用JSON格式进行交换,其具体功能与参数定义请查阅《AOP平台开放API使用说明》。
各业务功能或数据调用的Open API的基本调用流程如下:认证授权→获取令牌→调用接口。下面通过Firefox的HttpRequester插件说明调用实例。
此步骤为标准oAuth2.0认证授权的第一步,通过调用http://api.casicloud.com/api/1.0/oauth2/authorize?response_type=code&app_key=your_app_key&redirect_uri=http://www.example.com/response&state=your_state链接到云网用户登录授权页面
输入用户名、密码,登陆成功后会重定向到http://www.example.com?authorize_code=CODE&state=your_state
此步骤主要面向云网企业开发者,为简化流程,在云网企业开发者身份认证时即绑定到云网账号,认证授权通过调用http://api.casicloud.com/api/1.0/oauth2/inward_authorize实现,开发者应用将证书信息作为输入POST到后台,后台认证程序自动认证并生成相应的授权码返回给开发者应用。当然云网企业开发者也可以调用oauth2/authorize认证授权。
获取令牌(Token)通过调用http://api.casicloud.com/api/1.0/oauth2/access_token实现,开发者应用将刚才获取的授权码作为输入POST到后台,后台令牌生成器自动生成相应的令牌返回给开发者应用。
成功获取令牌后,用户应用便可调用权限允许的业务功能接口或数据调用接口,下图是查询云协作中心订单列表的接口调用实例。
错误编码 | 错误信息 | 问题原因 | 解决方法 |
200 | success | 成功 | 成功 |
201 | empty_response_type | response_type为空 | 请按照API帮助正确传递response_type的值 |
202 | unsupported_response_type | 不支持的response_type | 请按照API帮助正确传递response_type的值 |
203 | empty_app_key | app_key为空 | 请传递app_key(从控制台->应用证书获取) |
204 | empty_app_secret | app_secret为空 | 请传递app_secret(从控制台->应用证书获取) |
205 | unsubmitted_identity | 身份认证未提交 | 请提交身份认证,等待审核 |
206 | unaudited_identity | 身份认证未审核 | 请等待审核 |
207 | unpassed_identity | 身份认证未审核通过 | 请修改身份认证信息,重新提交,等待审核 |
208 | invalid_app_license | app_key或者app_secret错误 | 请检查app_key,app_secret是否正确(从控制台->应用证书获取) |
209 | non-existent_app_key | app_key不正确 | 请检查app_key是否正确(从控制台->应用证书获取) |
210 | disabled_app_key | 应用证书暂时停用 | 请稍后再试,或者联系管理员 |
211 | invalid_app_key | 应用证书已失效 | 您的账号因为某些原因已失效,如有疑问请联系管理员 |
212 | empty_token | access_token为空 | 请传递access_token(通过oAuth认证授权API获取) |
213 | expired_token | access_token不存在或者已过期 | 请检查access_token是否正确,或者通过oAuth认证授权API重新申请 |
214 | empty_authorize_code | authorize_code为空 | 请传递authorize_code(通过oAuth认证授权API获取) |
215 | expired_authorize_code | authorize_code不存在或者已过期 | 请检查authorize_code是否正确,或者通过oAuth认证授权API重新获取 |
216 | empty_grant_type | grant_type为空 | 请按照API帮助正确传递grant_type的值 |
217 | unsupported_grant_type | 不支持的grant_type | 传递grant_type错误,请按照API帮助正确传递grant_type的值 |
218 | empty_dev_type | 无法开发者类型,请联系管理员 | 无法开发者类型,请联系管理员 |
219 | unable to obtain the associated enterprise information | 无法获取关联的企业信息 | 无法获取关联的企业信息 |
220 | empty_request_data | 请求参数data为空 | 请求参数data为空,请检查请求参数 |
221 | missing_request_data | 缺少请求参数 | 缺少请求参数 |
222 | error_request_data_type | 请求参数类型错误 | 请检查请求参数的类型 |
223 | upload pictures to exceed the number of restrictions | 上传图片数量超过限制 | 上传图片数量超过限制 |
224 | error uploading image | 上传图片发生错误 | 上传图片发生错误 |
225 | upload pictures more than the maximum limit | 上传图片超过最大限制 | 上传图片超过最大限制 |
226 | appkey permission denied | 无权访问该接口 | 无权访问该接口,请联系管理员申请 |
227 | unable to obtain application label | 无法获取该接口所属的应用标签,请联系管理员 | 无法获取该接口所属的应用标签,请联系管理员 |
228 | access_denied | 无权访问该业务数据 | 无权访问该业务数据 |
229 | user or password error | 用户名或密码错误 | 请检查用户名、密码 |
230 | please log in using the old version | 请使用老版登录,登录之后请完善该用户的邮箱和电话信息 | 请使用老版登录,登录之后请完善该用户的邮箱和电话信息 |
231 | user request frequency exceeds the upper limit | 用户请求频次超过上限 | 用户请求频次超过上限 |
232 | IP request frequency exceeds the upper limit | IP请求频次超过上限 | IP请求频次超过上限 |
233 | empty_return_data | 返回参数为空 | 返回参数为空 |
234 | empty_redirect_uri | redirect_uri为空 | 请传递合法的redirect_uri |
235 | invalid_redirect_uri | redirect_uri不可用 | 请传递合法的redirect_uri |
236 | inconsistent_app_key | oAuth2.0认证用于产生authorize_code的app_key与第二步请求access_token时传递的app_key不一致 | 请用同一个app_key去请求oAuth2.0的两步认证接口 |
237 | devtype permission denied | 无权访问接口 | 部分接口(如:oauth2/inward_authorize)不开放给个人与非云网企业开发者调用 |
238 | invalid_api_url | api调用URL错误 | 请检查api的调用URL |
500 | unexpected_error | 未知错误 | 未知错误,请稍后再试 |