首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >简洁轻量级API: REST+JSON in .NET

简洁轻量级API: REST+JSON in .NET
EN

Stack Overflow用户
提问于 2010-09-14 15:59:42
回答 4查看 2.4K关注 0票数 3

摘要:我需要知道在不使用REST+JSON的.NET世界中是否存在一个轻量级的REST+JSON实现。如果不是,我正在寻找一些人谁会有兴趣启动一个开放源码项目的合资企业。

我不知道你的情况,但当WCF问世时,我是它的忠实粉丝,我称赞它的设计具有模块化和可扩展性。然而,随着我越来越频繁地使用它,基本问题开始暴露到我现在觉得它必须被废弃和重新设计的地步。这似乎是一项重要的声明,但我相信这些是主要的问题:

  1. 首先,WCF在内部使用SOAP作为消息,这意味着如果传输消息不是SOAP,则需要为每个调用支付从SOAP转换到SOAP的成本。这既昂贵又费时。
  2. 转换传出消息需要“插入”消息检查器并“窃取”消息。顾名思义,这是一个检查器(必须用于检查和日志记录),因此使用它来更改消息是一种攻击。
  3. 它是按照WSDL设计的,自2001年以来世界发生了很大的变化。实现REST还需要窃取消息。WCF是根据WSDL而不是REST设计的。
  4. 通道堆栈不必要地沉重。
  5. 主堆栈与协议无关。这不是一个优势,而是一个根本性的缺陷。如您所知,访问许多协议级别的信息是由于不可能实现一些重要的用户场景而添加的。例如,客户端在TCP中的IP地址无法访问并随后添加(现在可以使用perationContext.Current.IncomingMessagePropertiesRemoteEndpointMessageProperty.Name)访问)。
  6. 与其他平台的互操作性可能是一个问题。

现在看来,许多设计正朝着简单的JSON和REST方向发展。我只是喜欢他们的简单,我可以看到我的洗衣机在5-10年内消耗JSON和托管一个休息服务!我认为它们在.NET中的实现是一次黑客攻击,我们非常需要一个非常轻量级和简单的框架(因为这些都是简单的和轻量级的)来在IIS内外托管REST+JSON服务。我希望有这样一个框架,但如果没有,我真的很想和一些志同道合的人做点什么。

你怎么看?是否存在这样的框架?如果没有,有人感兴趣吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-09-14 16:10:33

提出JSON而不是HTML的MVC似乎是一种可能性。您可以使用JsonDataContractSerializer或JSON.Net来序列化数据域。

票数 1
EN

Stack Overflow用户

发布于 2010-09-14 16:54:09

看看OpenRasta。它似乎解决了你的许多问题。

票数 1
EN

Stack Overflow用户

发布于 2011-03-01 03:03:25

如果您真的不想使用IIS,则可以实现您自己的HTTP侦听器进程。这让我们编写自己的独立应用程序来响应HTTP请求(如果您愿意的话,HTTP请求可以作为服务运行),而不需要任何IIS、WCF或任何其他容器处理框架的开销。您的流程将位于HTTP.sys公开的.Net功能之上,并通过HttpListener类由.Net框架公开。

看看http://msdn.microsoft.com/en-us/library/system.net.httplistener.aspx

请注意,您需要编写自己的基础设施,以匹配传入请求并将它们分配给相应的处理程序(等效于UrlRoutingModule/RouteTable.Routes/MvcRouteHandler),的ASP.Net MVC,您需要将HttpListenerContext流到任何地方,以便检查传入请求并完成它。但是这给了你在你所能做的事情上最大的灵活性。

而且它当然会执行--我已经在标准桌面类机器上对一个基本的HttpListener实现进行了基准测试,处理了3000多个请求/秒,所以框架本身不会阻碍您。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3710635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档