我正在尝试从 asp.net 3.5 应用程序调用 Web 服务。我有一个包含 DNS 的 URL,使用它时出现以下错误。
(xxxxxx 是出于隐私考虑)请求失败并显示错误消息:-- 301 Moved Permanently
永久移动
文档已移至此处。
当我将 URL 与物理 IP 一起使用时,它工作得很好。有没有我遗漏的设置。我目前将 URL 行为设置为动态,以便它使用 webconfig 中的 url。
我正在尝试从 asp.net 3.5 应用程序调用 Web 服务。我有一个包含 DNS 的 URL,使用它时出现以下错误。
(xxxxxx 是出于隐私考虑)请求失败并显示错误消息:-- 301 Moved Permanently
文档已移至此处。
当我将 URL 与物理 IP 一起使用时,它工作得很好。有没有我遗漏的设置。我目前将 URL 行为设置为动态,以便它使用 webconfig 中的 url。
嗯 - 也许我没有正确理解您的问题,但听起来 Web 服务 URL 已从您使用的 URL 更改为 301 响应返回的 URL(xxxxxxxx 一个)。
您确定您使用 xxxxxxx URL 调用 Web 服务吗?
PS:
我有一个包含 DNS 的 URL
这可能不是您想说的 - DNS 代表域名系统,它将 URL 转换为 IP 地址的系统。我假设您想说 FQDN,意思是完全合格的域名。
根据传入的请求(包括您为 URL 中的主机名传递的内容),请求重写可能发生在服务器端。请求重写可能会导致 301 响应。
换句话说,主机名为 www.domain.com 的请求可能会被重写,而使用特定 IP 地址的请求,即使该 IP 地址是 www.domain.com 解析到的地址,也可能不会被重写。
解决方案是使用 IP 地址,或者使用从 301 响应中获得的新位置。
如果您使用的是 Web 引用,则可以将AllowAutoRedirect
代理实例的属性设置为 true。在这种情况下,重定向将在幕后发生。