我想编写一个服务,它接受一个xml文件(任何xml文件)和一些参数作为输入,并生成一个转换的xml文件作为其输出。因此,例如,如果我需要一个删除亵渎性质的服务,那么参数将是严重性阈值(从darn
到f***
的比例)和转换模式(f***ing
, f@%%ing
或flipping
)xml的实际格式无关紧要,输出将始终与输入格式相同。 (在你指出这是徒劳的练习之前:这不是我真正想要建立的服务。)
虽然我已经使用了基于REST的服务,但我对它们的设计并不熟悉,我真的不知道如何在资源/集合习语中使用它,更重要的是,如何使它真正成为REST-比如,避免使用WADL并使界面自我描述。或者REST不是正确的工具吗?
答案 0 :(得分:1)
来自Httpbis:
POST旨在允许制服 方法涵盖以下内容 功能:...提供一块 数据,例如提交结果 一个 形式,数据处理过程;
例如:
POST /ProfanityRemover?level=3
ContentType: application/xml
<Foo>
<Blah>Damn</Blah>
</Foo>
=>
200 OK
ContentType: application/xml
<Foo>
<Blah>Poop</Blah>
</Foo>
答案 1 :(得分:1)
从REST角度来看,这是一个很难回答的问题,因为您描述的服务没有任何服务器端资源 - 在请求和响应中没有要传输的服务器状态。所有的州都是客户端。传统上,这将由GET处理,但您可能不希望将XML文档写入查询字符串。
可能你最好使用Darrel Miller建议的方法。以文档为主体POST到您想要的端点,并将响应的正文作为更新的文档。