|
it
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
how to debug a server program
program, and the server return another xml message. So I wrote a testing server program the simple one and make sure the communication is fine. After that I started to program more complicated server program, since there are many compliation error. The client program keep displaying: The remote server returned an invalid statuscode: #8221;500 Internal Server Error Is there any way to display a detailed error message about the server program in the web browser? So I can quickly debugging it and fix it, not to have to waiting for an email from the program? Thanks. <% Set xmlDom=CreateObject("Microsoft.XMLDOM") XMLDom.async =False xmlDom.load Server.MapPath("0925SelectTest.xml") DataToSend = xmlDom.xml dim xmlhttp set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP") xmlhttp.Open "POST","https://xxxx.com/TestCompleteB2B.asp",false xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" xmlhttp.send xmlDom.xml if(Err <> 0) then Response.Write("An error occured when retrieving data from an external source.<br />") Response.Write(Err.Description) Response.End end if On error goto 0 'if request is not Ok then display detailed message about the request problem if(xmlHttp.status <> 200) then Response.Write("The remote server returned an invalid statuscode: #8221;" & _ xmlHttp.status & " " & xmlHttp.statusText) Response.End end if ' -- Betty Show quote
"c676228" <bettys@community.nospam> wrote in message Use MSXML2.DOMDocument.3.0,news:8DCD0B94-342C-40E4-B909-3CB46265A758@microsoft.com... > I have a testing client program, the purpose is send a xml file to a server > program, and the server return another xml message. So I wrote a testing > server program the simple one and make sure the communication is fine. After > that I started to program more complicated server program, since there are > many compliation error. The client program keep displaying: > The remote server returned an invalid statuscode: #8221;500 Internal Server > Error > > Is there any way to display a detailed error message about the server > program in the web browser? So I can quickly debugging it and fix it, not to > have to waiting for an email from the program? > > Thanks. > > <% > Set xmlDom=CreateObject("Microsoft.XMLDOM") > Delete the line above, DataToSend is not needed.> XMLDom.async =False > xmlDom.load Server.MapPath("0925SelectTest.xml") > DataToSend = xmlDom.xml > "application/x-www-form-urlencoded"> dim xmlhttp > set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP") > xmlhttp.Open "POST","https://xxxx.com/TestCompleteB2B.asp",false > xmlhttp.setRequestHeader "Content-Type", Your not sending Form data so delete the above request header. > xmlhttp.send xmlDom.xml The line above should be:-xmlhttp.send xmlDom XmlHtttp know how to send a DOM and will set the appropriate Content-Type "text/xml" for you. > if(Err <> 0) then Response.Wrte Err.Description> Response.Write("An error occured when retrieving data from an external > source.<br />") > Response.Write(Err.Description) Don't use parentheses when call procedures that don't return a value. > Response.End Don't do Response.Ends unless you really have to.> end if If the server is sending any detail about what went wroing it will be in the> On error goto 0 > 'if request is not Ok then display detailed message about the request > problem > if(xmlHttp.status <> 200) then > Response.Write("The remote server returned an invalid statuscode: #8221;" > & _ > xmlHttp.status & " " & xmlHttp.statusText) responseText. In fact it's likely to be a complete HTML page so you might consider:- Response.Write xmlHttp.responseText > Response.End Delete the above line.> end if > -- Anthony Jones - MVP ASP/ASP.NET Thank you so much Anthony. I will try this.
Show quote "Anthony Jones" wrote: > "c676228" <bettys@community.nospam> wrote in message > news:8DCD0B94-342C-40E4-B909-3CB46265A758@microsoft.com... > > I have a testing client program, the purpose is send a xml file to a > server > > program, and the server return another xml message. So I wrote a testing > > server program the simple one and make sure the communication is fine. > After > > that I started to program more complicated server program, since there are > > many compliation error. The client program keep displaying: > > The remote server returned an invalid statuscode: #8221;500 Internal > Server > > Error > > > > Is there any way to display a detailed error message about the server > > program in the web browser? So I can quickly debugging it and fix it, not > to > > have to waiting for an email from the program? > > > > Thanks. > > > > <% > > Set xmlDom=CreateObject("Microsoft.XMLDOM") > > Use MSXML2.DOMDocument.3.0, > > > > > XMLDom.async =False > > xmlDom.load Server.MapPath("0925SelectTest.xml") > > > DataToSend = xmlDom.xml > > Delete the line above, DataToSend is not needed. > > > > > dim xmlhttp > > set xmlhttp = server.Createobject("MSXML2.ServerXMLHTTP") > > xmlhttp.Open "POST","https://xxxx.com/TestCompleteB2B.asp",false > > > xmlhttp.setRequestHeader "Content-Type", > "application/x-www-form-urlencoded" > > Your not sending Form data so delete the above request header. > > > xmlhttp.send xmlDom.xml > > The line above should be:- > > xmlhttp.send xmlDom > > XmlHtttp know how to send a DOM and will set the appropriate Content-Type > "text/xml" for you. > > > > if(Err <> 0) then > > Response.Write("An error occured when retrieving data from an external > > source.<br />") > > Response.Write(Err.Description) > > Response.Wrte Err.Description > > Don't use parentheses when call procedures that don't return a value. > > > Response.End > > Don't do Response.Ends unless you really have to. > > > > end if > > On error goto 0 > > 'if request is not Ok then display detailed message about the request > > problem > > if(xmlHttp.status <> 200) then > > Response.Write("The remote server returned an invalid statuscode: > #8221;" > > & _ > > xmlHttp.status & " " & xmlHttp.statusText) > > If the server is sending any detail about what went wroing it will be in the > responseText. In fact it's likely to be a complete HTML page so you might > consider:- > > Response.Write xmlHttp.responseText > > > > Response.End > > Delete the above line. > > > > end if > > > > > > -- > Anthony Jones - MVP ASP/ASP.NET > > > |
|||||||||||||||||||||||