0

Response.GetResponseStream() はエスケープ文字を含む xml を返しています

<?xml version=\"1.0\" encoding=\"utf-8\"?>

このため、XmlReader は {None} を返します。助けてください?

HttpWebRequest req = (HttpWebRequest)HttpWebRequest.Create(url); req.Accept = "*/*"; req.Headers.Add("UA-CPU", "x86"); req.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; MS-RTC LM 8)"; HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); XmlTextReader xRead = new XmlTextReader(resp.GetResponseStream());

呼び出しがクライアント スクリプト Web サービス呼び出しからのものである場合、xRead は {None} です。StreamReader を使用して応答ストリームを確認すると

StreamReader reader = new StreamReader(resp.GetResponseStream() return reader.ReadToEnd()

エスケープ文字が表示されます

<?xml version=\"1.0\" encoding=\"utf-8\"?>

4

1 に答える 1

-1

実際に応答を取得する方法のコードサンプルがなければ、単純なを実行するだけString.Replace("\\"", "\"");です。応答が大きい場合は非効率になる可能性がありますが、それが迅速な解決策です。

于 2009-10-14T22:52:26.147 に答える