【发布时间】:2026-01-22 15:05:02
【问题描述】:
我目前正在开发一个 Web API,如果 FQDN 被传递给 API,它必须返回服务器列表或单个服务器。
路线是:
"api/Servers/{fqdn}"
当我从 REST 客户端对这样的 URL 执行 GET 时:
GET api/Servers/hostname.domain.com
IIS 返回 404 Not Found。
当我执行没有“。”的 GET 时在 URL 参数中:
GET api/Servers/hostname_domain_com
它成功路由到我的 API 控制器。
当我得到 404 错误页面时,它是 IIS 8 错误页面。这让我相信,当有一个“。”在 IIS 甚至没有将其传递给 MVC 管道的 URL 中,我的代码没有被执行。可能是因为 IIS 正在尝试为请求找到另一个处理程序,因为看起来我正在请求“.com”文件扩展名。但这只是我的假设。
以前有没有人经历过这种情况,如果有,您是如何解决的?
【问题讨论】:
标签: iis asp.net-web-api asp.net-mvc-routing