Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用速率限制和缓存为ASP.NET MVC站点创建API_C#_Asp.net_Asp.net Mvc_Api_Rest - Fatal编程技术网

C# 使用速率限制和缓存为ASP.NET MVC站点创建API

C# 使用速率限制和缓存为ASP.NET MVC站点创建API,c#,asp.net,asp.net-mvc,api,rest,C#,Asp.net,Asp.net Mvc,Api,Rest,最近,我对API非常感兴趣,特别是如何创建API。对于这个问题,假设我创建了一个ASP.NETMVC站点,其中包含一些数据;我想为这个网站创建一个API 我对此有多个问题: 我应该创建什么类型的API?我知道REST和oData API非常流行。每种方法的优点和缺点是什么,我如何实施它们?据我目前所知,带有ASP.NET MVC的REST API只是返回JSON而不是视图的操作,oData API是有文档记录的 如何处理编写?读取这两种API类型非常简单。然而,写作更为复杂。使用REST方法,我

最近,我对API非常感兴趣,特别是如何创建API。对于这个问题,假设我创建了一个ASP.NETMVC站点,其中包含一些数据;我想为这个网站创建一个API

我对此有多个问题:

  • 我应该创建什么类型的API?我知道REST和oData API非常流行。每种方法的优点和缺点是什么,我如何实施它们?据我目前所知,带有ASP.NET MVC的REST API只是返回JSON而不是视图的操作,oData API是有文档记录的
  • 如何处理编写?读取这两种API类型非常简单。然而,写作更为复杂。使用REST方法,我知道我可以使用HTTPPOST,但是如何实现身份验证呢?还有,有了oData,写作首先是如何工作的
  • 如何实现基本的速率限制和缓存?根据我过去使用API的经验,这些都是非常重要的事情,这样API服务器就不会过载。设置这两件事的最佳方式是什么
  • 我能得到一些示例代码吗?任何与C#和ASP.NET MVC相关的代码都将不胜感激 提前谢谢

    虽然这是一个宽泛的问题,但我认为它不太宽泛……:)


    还有一些与此类似的关于API的问题,但我没有发现任何直接解决我在这里概述的问题的问题。

    REST服务可以返回任何媒体类型。它可以是在中列出的标准化版本,也可以是您创建的自定义版本

    OData是建立在of基础上的协议。AtomPub本身是RESTful的,但是,OData目前打破了一些REST约束

    RESTful服务的身份验证最好使用HTTP授权头完成

    向OData服务写入数据的方式与使用AtomPub服务的方式相同。阅读说明书

    就我个人而言,在担心速率限制之前,我会先担心编写一个高效交付内容的有价值的服务。当你最终遇到那个问题时,你会很高兴的


    有关缓存的更多信息,请阅读。

    您能给我指出任何与C#和ASP.NET MVC有关的示例代码吗?无论如何谢谢你!