.net - ASMX 操作 404s,但 ASMX 服务描述没有,url 路由问题?

标签 .net .net-4.0 asmx url-routing webforms

所以我发现自己遇到了一个难题。我们的应用程序中有一些旧的 asmx Web 服务,多年来一直运行良好。

突然间,他们停止了构建服务器(CI)上的工作。我说停止工作,因为即使当我导航到服务时显示服务描述,调用任何操作也不会路由到服务(Web 表单路由)。在我尝试解决此问题时出现了 2 个奇怪的问题。

1.)搁置所有待处理的更改后,从 TFS 获取最新版本并进行本地构建(除非我弄错了,否则将获得构建服务器上的内容,因为我们使用每个构建/推送 checkin )。我注意到我无法在本地复制该错误。

2.) 即使我无法在本地复制错误,我仍然怀疑路由,但是我们所有服务的路由都会首先添加到表中,如下所示:"{service}.asmx/{*pathInfo}",我猜这是作为安全预防措施添加的,因为像 MyService.svc 这样的东西甚至不应该到达路由器,因为该文件实际上存在我不确定该规则是否适用于 MyService.svc/MyMethod

我不太确定如何测试路由,即在哪里设置断点来知道我是否正在针对特定请求遍历路由表,因此该区域中的任何指针将不胜感激,因为以及任何其他关于为什么会发生这种情况的想法。

谢谢!

最佳答案

在偶然发现这个SO条目后,我刚刚遇到了同样的错误:

Handlers returns 404 error on IIS7.5 integrated pipeline

并尝试了将 asmx 处理程序添加到 web.configs webServer 部分的解决方案,一切都很好:


  <system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules runAllManagedModulesForAllRequests="true"/>
    <handlers>
      <add verb="*" path="*.asmx" name="asmx" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
    </handlers>
  </system.webServer>


关于.net - ASMX 操作 404s,但 ASMX 服务描述没有,url 路由问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5438693/

相关文章:

.net - 如何获取 ASMX 生成的 WSDL soap :address to use https

.net - 为什么不到处都有 JIT(Just In Time)编译器?

c# - C++/cli : Cannot convert parameter 1

c# - 洗牌字符串数组没有重复

c# - 在控制台关闭时运行代码?

c# - 在 Visual Studio 2008 中将 Soap header 添加到 Soap 请求

c# - 用于 Web 服务安全的 SSL 加密 JSON 字符串

c# - 读取从 "Scanners and Cameras"打开的文件会抛出 UnauthorizedAccessException

.net - 引用另一个约定方法时是否应该重复条件?

.net-4.0 - 将 VSTO 项目升级到 .net 4 - 我实际需要哪些引用资料?