c# - 没有资源的 Web API 端点
问题描述
我希望我的 webapi 端点有一个没有资源的 Get 操作。
例如:http://localhost:56155/ 资源:api/program/get,这个动作我想在有人打的时候打
http://localhost:56155/在浏览器中。那可能吗?
我在 webapiconfig.cs 中添加了这个
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { controller = "Program",
action = "Get",
id = RouteParameter.Optional
}
);`
但是当我启动应用程序时,它不会重定向或点击我的程序控制器的操作。
解决方案
您的 routeTemplate 中有强制段apirouteTemplate: "api/{controller}/{action}/{id}"
。只需删除此段,该路由将与空 url 一起使用
routeTemplate: "{controller}/{action}/{id}"
。
推荐阅读
- vue.js - Vue3过渡组,进入活动动画不工作而离开工作
- python - 如何使用python套接字编程附加到文件(重新启动服务器后在同一个dict中)
- forth - 如何编译到任意内存并在 Forth 中执行?
- reactjs - 道具未渲染
- elasticsearch - 嵌套对象中的 Filebeats 字符串转换
- html - "[aria-hidden="true"] 元素包含可聚焦的后代"; 解决这个问题的最佳方法?
- r - 使用 ggplot2 创建并排条形图
- rows - 计算基本事实表的行数
- spring-batch - 弹簧批处理条件if步骤
- java - Gradle installDist 包括一些依赖项(和传递)并排除其他