1

我目前有一个使用实体框架来执行所有 CRUD 操作的 webforms asp.net。

我需要为我的网站创建一个面向公众的 API。

我需要来自 API 的以下内容:

  • 使用 API 的客户端的身份验证
  • 使用记录,以确保没有滥用等
  • 节流是一种额外的附加功能,以确保一个人不会超载 API。
  • 根据调用客户端使用的标志,返回数据最好能够以 JSON 或 XML 返回。

我正在寻找任何指导作为创建公共 API 以满足这些要求的最有效方式。建议的书籍,链接,建议都是,任何其他的都欢迎。

4

2 回答 2

1

在代码中这样做绝对是可行的,但它对所有这些功能都相当重要。一种更简单的方法是使用 3scale (http://www.3scale.net) 之类的东西,它开箱即用(您可以发布 API 密钥、对其进行速率限制、获取 API 分析 + 创建开发人员门户) )。设置通常是通过您放入系统的代码库(库在这里:(https://support.3scale.net/libraries)或有一个 API 或最后在您的应用程序前面设置 Varnish 作为 API 代理使用这个模组:https ://github.com/3scale/libvmod-3scale/ 。

对于数据返回类型,通常您可以通过在 API 请求中使用 .json、.xml 进行切换,并将其作为代码中的内容类型进行处理。

于 2012-06-03T08:09:17.657 回答
1

使用 WebAPI:

ASP.NET Web API 是一个框架,可让您轻松构建覆盖广泛客户端(包括浏览器和移动设备)的 HTTP 服务。ASP.NET Web API 是在 .NET Framework 上构建 RESTful 应用程序的理想平台。

http://blogs.msdn.com/b/henrikn/archive/2012/02/23/using-asp-net-web-api-with-asp-net-web-forms.aspx http://www.asp .net/web-api/overview/hosting-aspnet-web-api/using-web-api-with-aspnet-web-forms http://www.beletsky.net/2011/10/integrating-aspnet-mvc- into-legacy-web.html

于 2012-06-03T11:25:22.863 回答