2010-08-16 3 views
1

J'ai un formulaire de test, (voir ci-dessous), que si je le soumets manuellement, (en cliquant sur le bouton Soumettre), renvoie une liste XML d'ordres du script d'action.Passage de xml via la chaîne de requête au formulaire ASP classique

Je voudrais être en mesure de passer le XML actuellement contenu dans le formulaire HTML de test programmatique via xmlHTTP. Jusqu'à présent, pas de chance. Toute aide serait appréciée.

<form action="processorders.asp" method="post" name="Orders" target="_blank"> 
    <textarea cols="80" rows="10" name="request"> 
    <REQUEST Version="1.0"> 
     <RequestID>06012005171718</RequestID> 
     <Command>Orders</Command> 
     <UserID>myuserID</UserID> 
     <Password>xyzuvw</Password> 
     <Status>all</Status> 
     <SecurityKey></SecurityKey> 
     <OrderStartNumber>2255</OrderStartNumber>   
     </REQUEST> 
    </textarea><br> 
    <input type="submit"> 
</form> 
+0

@Eddins, vous voulez utiliser votre navigateur Web pour envoyer le HTTP HTML POST par protocole XML à la place? – cregox

+0

@J Eddins Ajoutez plus de détails sur ce que vous essayez de faire ... vous voulez une page web qui soumet automatiquement ce formulaire? ou vous souhaitez un code javascript qui est incorporé dans une page Web qui envoie ce xml asynchrone au serveur? –

Répondre

1

Untested, mais vous pouvez essayer quelque chose comme ceci:

Dim objXMLHTTP, returncode, XMLstring 
XMLstring = "<REQUEST Version=""1.0"">" 
XMLstring = XMLstring & "<RequestID>06012005171718</RequestID>" 
XMLstring = XMLstring & "<Command>Orders</Command>" 
XMLstring = XMLstring & "<UserID>myuserID</UserID>" 
XMLstring = XMLstring & "<Password>xyzuvw</Password>" 
XMLstring = XMLstring & "<Status>all</Status>" 
XMLstring = XMLstring & "<SecurityKey></SecurityKey>" 
XMLstring = XMLstring & "<OrderStartNumber>2255</OrderStartNumber>" 
XMLstring = XMLstring & "</REQUEST>" 
' Create an xmlhttp object: 
Set objXMLHTTP = Server.CreateObject("Microsoft.XMLHTTP") 
' Or, for version 3.0 of XMLHTTP, use: 
' Set xml = Server.CreateObject("MSXML2.ServerXMLHTTP") 
' Open the connection to the remote server: 
objXMLHTTPOpen "POST", "http://url.to.your/target", False 
objXMLHTTP.Send cstr(XMLstring) 
' Actually Sends the request and returns the data: 
returncode = objXMLHTTP.responseText 
Set objXMLHTTP = Nothing 
' Now do with the returncode what you like (this is the response HTML form the target URL) 

S'il vous plaît noter que: - vous envoyez des données de nom d'utilisateur et mot de passe sur une ligne HTTP non sécurisée - le XML est pas validé ou analysable, vous devrez peut-être exécuter par un analyseur XML

Rico Suave

Questions connexes