C# 创建REST客户端API

C# 创建REST客户端API,c#,asp.net-mvc,rest,wadl,C#,Asp.net Mvc,Rest,Wadl,我目前正在研究为RESTfull应用程序创建客户端API的选项。到目前为止,我们已经有了WCF服务来允许所有应用程序连接到业务层,我们对它越来越不满意 我们已经为web提供了大部分基础设施(html和json请求),但我们需要从其他应用程序访问服务(一些将链接到主web应用程序模型库,其他则不会) 我一直在读关于WADL的书,看起来这会很有好处。我们可以生成wadl和客户端库,并使用它检查javascript URL 我想知道其他人使用了什么,哪些有效,哪些无效。在REST体系结构中: 资源链

我目前正在研究为RESTfull应用程序创建客户端API的选项。到目前为止,我们已经有了WCF服务来允许所有应用程序连接到业务层,我们对它越来越不满意

我们已经为web提供了大部分基础设施(html和json请求),但我们需要从其他应用程序访问服务(一些将链接到主web应用程序模型库,其他则不会)

我一直在读关于WADL的书,看起来这会很有好处。我们可以生成wadl和客户端库,并使用它检查javascript URL


我想知道其他人使用了什么,哪些有效,哪些无效。

在REST体系结构中:

  • 资源链接到它们的描述文档(如果有的话),而不是相反
  • 资源并不复杂(不像RPC),因此通常不需要描述文档
  • 松耦合为王;合同既是不必要的,也是有害的
  • 资源相互链接,消除了对资源发现服务的大部分需求

好的rest客户端API是围绕curl、wget或特定于语言的HTTP库的一组包装器。您可能还需要一些额外的方法或函数来处理应用程序的细节(即专门的XML/JSON解析),但这应该就足够了。

是一个新的开源项目,它正试图提供解决方案。iBeans(集成bean)是用于RESTful或其他服务的客户端API。目前,iBeans确实需要一个服务器(您可以很容易地将框架放到Tomcat中),并且可以从Javascript或java应用程序中使用。

试试这个web应用程序:。令人印象深刻的是

REST中的资源可能很复杂。您需要在API中记录媒体类型。不,您实际上不需要记录任何内容。您需要的唯一文档是介质类型的规范(例如,请参阅AtomPub,RFC5023;开发AtomPub客户端不需要服务文档)。Iannick已经走上了正轨。整体想法看起来很有趣,但是FRAPI是基于RPC风格的思维,而不是REST。Aaron,对不起,但当它专注于“操作”或为HTTP错误代码提供特定含义或鼓励描述服务(应该鼓励描述媒体类型)时,它就不再“做REST”。JanThis看起来很像服务器端?还是我遗漏了什么?