我已经在我的Web api上设置了路由api / Exchange / Groups / Members / {samAccountName},并且可以正常运行
但是,如果 samAccountName 的值包含措辞“ prn。”,它将返回找不到资源。
示例
http://localhost:4483/api/Exchange/Groups/Members/prn.agency1
http://localhost:4483/api/Exchange/Groups/Members/prn.agency2
http://localhost:4483/api/Exchange/Groups/Members/prn.agency3
我不确定哪里错了。这是我的代码段
.caption-text {
align:left
}
有什么主意吗?
答案 0 :(得分:0)
问题出在您的samAccountName
格式中-它包含点,IIS将其解释为文件扩展名。 IIS尝试查找文件类型为*.agency1
(agency2
,agency3
)的处理程序,找不到它并引发错误。
您应该更改格式以排除点,例如将其更改为破折号/下划线,或者在web.config
中启用此参数
<configuration>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
有关runAllManagedModulesForAllRequests
标志的更多信息和缺点,请参见此博客文章:https://weblog.west-wind.com/posts/2012/Oct/25/Caveats-with-the-runAllManagedModulesForAllRequests-in-IIS-78
答案 1 :(得分:0)
在web.config中,添加
<system.web>
<httpRuntime relaxedUrlToFileSystemMapping="true" />
</system.web>
here解释了更多细节。