加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-web-api – 找不到Web API路由404

发布时间:2020-12-16 06:50:23 所属栏目:asp.Net 来源:网络整理
导读:尝试访问我的一个Web API操作时,我收到404未找到错误: 我有我的WebAPIConfig: config.Routes.MapHttpRoute( name: "DefaultApi",routeTemplate: "api/{controller}/{action}/{id}",defaults: new { id = RouteParameter.Optional }); 我有一个名为OnSource
尝试访问我的一个Web API操作时,我收到404未找到错误:

我有我的WebAPIConfig:

config.Routes.MapHttpRoute(
      name: "DefaultApi",routeTemplate: "api/{controller}/{action}/{id}",defaults: new { id = RouteParameter.Optional }
);

我有一个名为OnSourceAPIController的控制器和一个GET操作ValidateServiceRequestAuto.

我尝试去的时候收到404错误:

http://localhost/api/OnSourceAPI/ValidateServiceRequestAuto

我的第一个猜测是我遇到了某种路由错误,但我为它创建了一个mvc控制器和一个索引页,并且能够通过这种路由(api / controller / action)正常浏览.内置的api / help页面甚至将/ api / OnSourceAPI / ValidateServiceRequestAuto显示为我的api调用的路由.

我也尝试过使用WebAPIRouteDebugger工具.当我使用它时,它给我一个000 404找不到的错误

http://localhost/api/OnSourceAPI/ValidateServiceRequestAuto

,但实际上给我正常的路线信息,如果我把localhost从前面拿走并且只是使用

api/OnSourceAPI/ValidateServiceRequestAuto as the URL...

任何指针将不胜感激.

解决方法

我想通了,现在觉得有点傻.

我的webapi项目在我的普通网站项目中运行,路径为… / api,所以因为我将api路由设置为api / controller / action,我真正需要使用的路径是localhost / api / API /控制器/动作.事实证明,404就在那里,因为它确实找不到该位置的任何东西.当计算机完全按照你告诉他们的方式行事时,我讨厌它.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读