0

私たちのページにリクエストを送信する Web サイトがhttp://www.xyz.com/test.aspxあり、その代わりに応答をポストバックする必要があります。次のコードは、応答を送り返しているものです。問題は、XML データを送り返すことですが、test.aspx のコードも送信することです。これを削除する方法がわかりません。

Random random = new Random();
int randomNumber = random.Next(0, 10000000);
attrval = randomNumber + "tty";
strCXML = "<?xml version=" + "\"" + "1.0" + "\"" + " encoding=" + "\"" + " UTF-8" + "\"" + " ?>";      
strCXML =strCXML+"<!DOCTYPE cXML SYSTEM " + "\"" + "http://xml.cxml.org/schemas/cXML/1.2.023/cXML.dtd" + "\"" + ">";
strCXML = strCXML + " <cXML payloadID=" + "\"" + attrval + "\"" + " timestamp=" + "\"" + strTimeStamp + "\"" + ">";
strCXML = strCXML + "<Response>";
strCXML = strCXML + "   <Status code=" + "\"" + 200 + "\"" + " text=" + "\"" + "success" + "\"" + ">" + "</Status>";
strCXML = strCXML + "   <PunchOutSetupResponse> ";
strCXML = strCXML + "     <StartPage>";
strCXML = strCXML + "       <URL>" + strMySiteURL + "</URL>";
strCXML = strCXML + "     </StartPage>";
strCXML = strCXML + "   </PunchOutSetupResponse>";
strCXML = strCXML + " </Response>";
strCXML = strCXML + "</cXML>";
Response.Write(strCXML);

これは、データをポストバックするときに、test.aspx ページの html も含まれていることを除いて、正常に機能しています。

!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>

</title></head>
<body>

</body>
</html>
  Please contact support with the Error Reference Number: ANERR-10000000000000000057040121 for more details</Status>
        </Response>
</cXML>

上記のXMLデータのみをポストバックするように、ポストバックする方法についてのアイデア。

4

1 に答える 1

2

xml をストリームに書き込んだ後、Response.End を呼び出す必要があります。そうしないと、サイトは引き続きページをレンダリングします。

于 2012-10-05T23:23:43.973 に答える