转载地址:http://www.cnblogs.com/zerotest/p/4671225.html
REST推理
这份简短的教程将引导您完成架构推断功能。
我们将创建一个新的项目,并添加一个REST服务,而初始WADL文件启动了。
发送请求后,我们就可以使用响应来构建我们的架构。
演示请求
为了演示的原则,我们会从一个演示Flickr的REST的例子。
该请求(成功时)返回以下这种格式的响应:
<rsp stat="ok"> <method>flickr.test.echo</method> <format>rest</format> <foo>bar</foo> <api_key>9e5f204388e9d6070b6b1423876be728</api_key> </rsp>
注:该API的主要变化,所以你可能需要访问Flickr的REST演示站点,并得到一个最新的API密钥。
创建项目和服务
获取很容易请求到一个REST项目:
-
打开 文件菜单
-
选择 新的REST项目
在创建REST项目窗口打开:
-
复制和以往的 网址进入该区域
-
点击 确定
该项目被创建并添加到工作区:
来自请求的参数的URL被自动提取,并可以在编辑器中查看。
请求和响应
架构选项卡
其余的反应来看具有所谓的“架构”底部的标签。这是推断架构检查员。
-
打开 架构选项卡
没有信息已被尚未登陆。
一般情况下,我们希望解决方案的冲突的过程自动化。但出于演示的目的,这个时候我们将采取手动:
-
确保 自动解析被禁用。
获取响应
该请求被发送,并且我们获得回应:
注:该API的主要变化,所以你可能需要访问Flickr的REST演示站点,并得到一个最新的API密钥。
架构选项卡发生变化,表明架构的冲突时有发生:
这意味着该反应的分析表明,有当前响应和先前推断模式之间的冲突。
-
打开 架构检查
现在,我们可以手动解决冲突。
-
点击 解决冲突
对于每个检测到冲突时,我们会得到一个通知,并可以根据需要采取行动。
在这种情况下,我们可以假设所有冲突应该解决(再次,没有以前的模式)。
-
点击 Yes(是)所有 *
所有冲突,然后自动解决,并记录在日志模式:
推断架构
当所有的冲突已经解决,该架构被添加在架构选项卡:
到目前为止,我们可以看到一个命名空间,并为关联了XSD架构。作为根据仅一个响应的架构,我们可以通过一些更多的请求优化它。我们应该尝试改变响应,使他们尽可能不同。例如,我们可以发出一个无效的请求,这样我们就可以推断架构故障,或使该返回一个空的结果集的查询请求,等等。