我正在尝试从 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。在这种情况下,重定向将在幕后发生。