如何设计一个宁静的API为一个媒体分析发动机
-
22-07-2019 - |
题
我是新来安宁的概念和需要设计一种简单的API为一个媒体分析服务,我需要设立,以执行各种任务,例如面分析、区域检测,等等。在上载图像和视频。
轮廓我最初的设计如下:
- 客户的员额配置XML文件
http://manalysis.com/facerecognition
.这将创建一个 配置文件 可用于多种分析会议。响应包括XMLProfileID
要参阅这个档案。客户可以跳过这个步骤对使用默认config参数 - 客户员额的视频数据进行分析以
http://manalysis.com/facerecognition
(与ProfileID作为一个参数,如果它的设置)。这将创建一个 分析届会议.回XML有SessionID
. - 客户可以送去
http://manalysis.com/facerecognition/SessionID
收到的状况的会议。
我在正确的轨道?具体地说,我有以下问题:
- 我应该包括
facerecognition
在URL?罗伊菲尔丁说,"休息API必须不定固定的资源名或层次结构"这是一个实例那样的错误? - 分析结果可以回到客户在一个大XML文件中或者当每个事件的检测。我应该怎么告诉的分析发动机在哪里返回的结果?
- 我应该明确删除配置文件在分析完成后,通过删除的电话?
谢谢,
C
解决方案
你可以修复的入口点网址,
GET /facerecognition
<FaceRecognitionService>
<Profiles href="/facerecognition/profiles"/>
<AnalysisRequests href="/facerecognition/analysisrequests"/>
</FaceRecognitionService>
创建一个新的配置文件张贴XML简介的网址在href属性的配置文件
POST /facerecognition/profiles
201 - Created
Location: /facerecognition/profile/33
发起的分析,通过创建一个新的分析请求。我会避免使用该术语会话,因为它是太泛和有大量的消极协会在剩下的世界。
POST /facerecognition/analysisrequests?profileId=33
201 - Created
Location: /facerecognition/analysisrequest/2103
检查状态的过程
GET /facerecognition/analysisrequest/2103
<AnalysisRequest>
<Status>Processing</Status>
<Cancel Method="DELETE" href="/facerecognition/analysisrequest/2103" />
</AnalysisRequest>
当处理已经完成,同样得到可以返回
<AnalysisRequest>
<Status>Completed</Status>
<Results href="/facerecognition/analysisrequest/2103/results" />
</AnalysisRequest>
具体网址,我已选择是相当任意的,可使用不管是最明显的你。
不隶属于 StackOverflow