2009-09-23 6 views

Répondre

16

Vous pouvez essayer quelque chose comme ceci:

Set ServerXmlHttp = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0") 
ServerXmlHttp.open "POST", "http://www.domain.com/page.asp" 
ServerXmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
ServerXmlHttp.setRequestHeader "Content-Length", Len(PostData) 
ServerXmlHttp.send PostData 

If ServerXmlHttp.status = 200 Then 
    TextResponse = ServerXmlHttp.responseText 
    XMLResponse = ServerXmlHttp.responseXML 
    StreamResponse = ServerXmlHttp.responseStream 
Else 
    ' Handle missing response or other errors here 
End If 

Set ServerXmlHttp = Nothing 

où PostData est les données que vous souhaitez publier (par exemple des paires nom-valeur, document XML ou autre).

Vous devez définir la version correcte de MSXML2.ServerXMLHTTP pour correspondre à ce que vous avez installé.

La méthode ouverte prend cinq arguments, dont seuls les deux premiers sont obligatoires:

ServerXmlHttp.open Method, URL, Async, User, Password 
  • Méthode: "GET" ou "POST"
  • URL: l'URL que vous souhaitez publier sur
  • Async: la valeur par défaut est False (l'appel ne retourne pas immédiatement) - mettre à true pour un appel asynchrone
  • utilisateur: le nom d'utilisateur requis pour l'authentification
  • Mot de passe: le mot de passe requis pour l'authentification

Lorsque l'appel est renvoyé, la propriété status conserve le statut HTTP. Une valeur de 200 signifie OK - 404 signifie non trouvé, 500 signifie erreur de serveur, etc. (Voir http://en.wikipedia.org/wiki/List_of_HTTP_status_codes pour les autres valeurs.)

Vous pouvez obtenir la réponse au format texte (propriété responseText), XML (propriété responseXML) ou flux (propriété responseStream).

+4

"Vous devez définir la version correcte de MSXML2.ServerXMLHTTP pour correspondre à ce que vous avez installé." ou utilisez simplement MSXML2.ServerXMLHTTP.3.0 qui est toujours présent sur toutes les plates-formes actuellement supportées. – AnthonyWJones

0

Vous devez utiliser directement l'un des objets serveur xmlhttp existants ou vous pouvez utiliser une bibliothèque qui facilite la vie en supprimant les éléments de bas niveau.

Vérifier ajaxed implementation d'aller chercher une URL

Inconvénient: Vous devez configurer la bibliothèque afin de le faire fonctionner. Je ne sais pas si cela est nécessaire pour votre projet.

Questions connexes