【问题标题】:Redirect ASMX to another server将 ASMX 重定向到另一台服务器
【发布时间】:2015-11-30 13:21:31
【问题描述】:

我遇到了一个我正在处理的问题的拦截器,任何建议都非常感谢。我正在使用已移至新服务器的 Web 服务。

网址已从

https://www.example.co.uk/webservice/api.asmx

到

http://www.example.co.uk/webapistd/api.asmx

如果我更新 .net 项目中的 Web 引用并运行代码,我会收到 301 Moved Permanently 错误(未发送重定向 URL)。

请注意,这是旧式 Web 参考,而不是服务参考。

有人知道这背后的原因吗?我很确定新网址是正确的。

可能是其他东西被掩盖为 301 错误,例如不同的 SOAP 版本?

只是试图进一步撒网而不是重写以使用服务引用(这可能会或可能不会解决问题)。

【问题讨论】:

  • 如果只是web服务的地址发生了变化,调用服务时只需设置新的Url即可。
  • 感谢您的回答。我可以在代码中设置网址吗?
  • 是的,你可以。例如var svc = new Service1(); svc.Url = "http://www.example.co.uk/webapistd/api.asmx";
  • 此外,如果您检查项目的设置,您将在 Settings.settings 中看到一个条目,其中包含 Web 服务的地址。您可以更新该设置的值。
  • 感谢您的 cmets。

标签: c# asp.net vb.net web-services asmx


【解决方案1】:

检查下面提到的项目文件以检查对新 Web 服务的引用是否已正确更新 (例如:“https”到“http”)

  1. Web.config
  2. Reference.map
  3. YourwebserviceName.disco (api.disco)

【讨论】:

  • 感谢您的 cmets。
【解决方案2】:

当调用 asmx WebService 时,您已将其引用添加到您的项目中,Visual Studio 会在 Settings.settings 中创建一个条目,并将其值设置为您添加服务的 url。

当您调用 var svc= new Service1(); 时,它会使用该设置的值作为服务的 Url。

更改网址:

  • 您可以更改Settings.settings 中的默认网址
  • 您可以简单地使用svc.Url="your new url"; 将新网址传递给服务

【讨论】:

  • 谢谢你们的cmets。
猜你喜欢
  • 2012-11-22
  • 2019-02-23
  • 1970-01-01
  • 1970-01-01
  • 2017-08-08
  • 1970-01-01
  • 1970-01-01
  • 2013-05-27
  • 1970-01-01
相关资源
最近更新 更多