我正在编写一个http API,我需要比我在asp.net中使用的更多的灵活性。这是一个非常简单的问题,只需要一些帮助就可以走上正轨。
我的问题是,我想根据请求创建一个响应对象。 F.x用户在请求时可以获取xml文档:“myapi / images / 5 / xml”。或者如果它以json结束,则将其作为json。创建正确的响应对象没有问题。我只需要一种方法来收集某个对象中的所有请求,然后使用正则表达式解析URL并在其上创建正确的响应。
但是如何收集Web应用程序上的所有请求?
答案 0 :(得分:1)
您可能不想要使用正则表达式解析整个URL。挂钩ASP.NET的路由引擎可能更容易: -
routes.MapHttpRoute(
name: "MyApi",
routeTemplate: "myapi/{controller}/{id}/{responseType}",
defaults: new
{
id = RouteParameter.Optional, responseType = RouteParameter.Optional
});
然后,您的操作方法可以从网址接受参数responseType
。
我同意上面的史蒂文的评论,但你应该从请求标题中获取响应类型,而不是从网址获取。