关于WADL-specification,我有两个问题。
他们的示例http://foo.it/widgets/123?custId=cust1234&verbose=true
包含两个可选的查询参数custId
和verbose
。
header
的意思是什么以及我需要放置xml的位置 - 我的理解是正确的吗?资源或请求的子参数元素(参见第2.12节) 样式值'query'表示所描述的URI查询参数 在HTML 4.01 [4]的第17.13节中。查询的运行时值 HTTP方法时,参数作为URI查询参数发送 调用。
以下示例显示了具有生成URI的资源 它支持带有两个可选查询的单个HTTP方法 参数
这是他们的例子
<resources base="http://example.com/widgets">
<resource path="{widgetId}">
<param name="custId" style="query"/>
<method name="GET">
<request>
<param name="verbose" style="query" type="xsd:boolean"/>
</request>
<response>
...
</response>
</method>
</resource>
</resources>
在我看来,resource param method request param
或层次结构的序列不正确
resource
++ param <-- why is this here
++ method
++++ request
++++++ param <-- and the other one here
++++ /request
我原本希望参数都在<request>
里面,就像这里
<resource path="{widgetId}">
// removed custId
<method name="GET">
<request>
<param name="custId" style="query"/>
<param name="verbose" style="query" type="xsd:boolean"/>
</request>
....
</method>
</resource>
所以这个层次结构
resource
++ method
++++ request
++++++ param <-- all params are inside request
++++++ param
++++ /request
我的理解是否正确如何嵌套参数或无关紧要或具有不同的含义?
此代码段是否正确?
<method name="POST">
<request>
<param name="custId" style="query" required="true"/>
<param name="verbose" style="query" required="true" type="xsd:boolean"/>
</request>
....
</method>
header
我如何理解: header:指定在资源类型的所有子方法元素的请求部分中使用的HTTP头
这是否与以下示例类似,并且字段userId
将成为每个请求中http-header的一部分?
<request>
<param name="userId" style="header" required="true" />
....
</request>
由于
至少基于wikipedia entry to WADL所需部分似乎是正确的
<method name="GET" id="search">
<request>
<param name="appid" type="xsd:string" style="query" required="true"/>
<param name="query" type="xsd:string" style="query" required="true"/>
...
答案 0 :(得分:0)
当您使用WSDL或SOAP消息传递时,您可以定义这些被称为部分的元素(输入,输出操作)。这些部件使用称为Schema的定义的一部分。
此架构元素是WSDL的一部分,也可能是单独的XSD文档。而这个架构元素就是告诉格式和规则的。
Q1。格式似乎不正确,请参阅此示例https://docs.oracle.com/cd/E41633_01/pt853pbh1/eng/pt/tibr/concept_UnderstandingWADLDocuments-7b7fd7.html
Q2。发布请求的示例
<method id="POSTWeatherStation.v1" name="POST">
<request>
<resource path="weather/{state}/{city}?forecast={day}">
<param name="state" required="true" style="template" type="xsd:string"/>
<param name="city" required="true" style="template" type="xsd:string"/>
<param name="day" required="true" style="template" type="xsd:string"/>
</resource>
Q3。是的,它应该是具有指定为标题的参数的方法的一部分。