【问题标题】:Invoking another URL调用另一个 URL
【发布时间】:2011-02-13 12:57:46
【问题描述】:
    string url = "http://foo.com/bar?id=" + id + "&more=" + more;
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();

我正在尝试调用另一台服务器,并返回以下内容:

 |FATAL|The remote server returned an error: (406) Not Acceptable. (REF #1)
System.Net.WebException: The remote server returned an error: (406) Not Acceptable.

为什么会出现这个错误?以及如何解决这个问题?

【问题讨论】:

    标签: c# .net http url httpwebrequest


    【解决方案1】:

    根据RFC

    10.4.7 406 不可接受

    请求标识的资源 只能产生响应 有内容的实体 特性不可接受 根据发送的接受标头 在请求中。

    查看您的请求发送的接受标头,以及该 URL 中的内容服务器; )


    奖金

    • 要查看接受标头:浏览至 URL 并使用 FireBug(HTML 选项卡)。

    • 将接受标头设置到您的 请求使用HttpWebRequest Members

    【讨论】:

    • 所以你是说我应该调用它,而不是期望任何响应?
    • 嗨 User177883(你必须设置你的昵称;)呵呵呵呵,该 URL 中提供了什么样的资源(图像、HTML 页面,可能是网络服务)?
    • 我只是调用带有参数的 url。
    • 您好!您能浏览一下网址吗? (包括你传递的参数)
    • 使用 firebug 获取您发送到服务器的 HTTP 标头。然后手动将它们设置为 HttpWebRequest 对象 - 请参阅 MSDN 文章 msdn.microsoft.com/en-us/library/… 告诉我它是否有效:)
    猜你喜欢
    • 1970-01-01
    • 2020-08-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-02
    • 2016-11-02
    • 2021-09-25
    • 2013-08-04
    • 2014-07-02
    相关资源
    最近更新 更多