0

次のコードを使用して、Webページのコンテンツをロードします。

    private string HttpGet(string uri)
    {
        WebRequest webRequest = WebRequest.Create(uri);
        try
        { 
            WebResponse webResponse = webRequest.GetResponse();
            StreamReader sr = new StreamReader(webResponse.GetResponseStream(), Encoding.GetEncoding("utf-8"), false);
            return sr.ReadToEnd().Trim();
        }
        catch (WebException ex)
        {
            MessageBox.Show(ex.Message, "HttpGet: Response error",
               MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        return null;
    }

ほとんどの場合、私は実際にhtmlコンテンツを取得します。http; // stackoverflow.comでうまく機能しますが、http; // www.icetrade.by(セミコロンについて知っているので、リンクにしたくないだけです)をロードしようとすると、通常はWebで機能します。 javascriptが有効になっていない場合でも、ブラウザは次のようになります。

<br />
<b>Fatal error</b>:  Class name must be a valid object or a string in <b>K:\hosting\icetrade.by\html\includes\module.class.php</b> on line <b>141</b><br />

このような動作の理由は何ですか?実際のHTMLコンテンツを取得するにはどうすればよいですか?

4

1 に答える 1

1

これは間違いなくサーバー側のエラーです。おそらく、このサイトは、UserAgentやCookieなどの一部のヘッダーがない場合の状況を処理できません。

これがあなたが管理しているサイトである場合は、module.class.phpの141行目で何が起こっているかを確認してください

于 2013-03-18T10:23:58.217 に答える