2010-06-03 3 views
1

Je tente d'appeler une page ASP.NET à partir d'une page ASP classique sur la même machine. La page ASP se trouve dans c: \ inetpub \ wwwroot. La page ASP.NET est situé dans C: \ Inetpub \ wwwroot \ WebServiceWrapper \Appel d'une page ASP.NET à partir d'une page ASP

Voici le code ASP pour appeler la page:

Dim objHttp, strQuery 
set objHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 
strQuery = "http://localhost/WebServiceWrapper/CalledFromAsp.aspx?First=Steve&Last=Smith&DOB=11/25/2001&Gender=M" 
objHttp.open "POST", strQuery, false 
objHttp.send 
Set objHttp = Nothing 

Le code ASP.NET qui appelle un service Web et définit un cookie, fonctionne si je l'appelle directement du navigateur. Cependant, à l'aide de l'objet Msxml2.ServerXMLHTTP, ce n'est pas le cas. Le cookie n'est pas généré et il n'y a pas d'erreur. Il n'y a aucun événement dans l'Observateur d'événements.

La page ASP.NET a été développée dans Visual Studio 2005, .NET 2.0. Changer le POST à ​​un GET n'a pas aidé.

Des idées?

+0

Donc la demande à 'CalledFromAsp.aspx' est destinée à définir le cookie? La requête provient du serveur, mais pas du navigateur, de sorte que tout cookie renvoyé ne sera pas transmis au navigateur. –

Répondre

1

Si vous essayez de rediriger l'utilisateur vers la page ASP.NET, utilisez Response.Redirect.

Si vous souhaitez simplement appeler la page ASP.NET pour définir le cookie lorsque l'utilisateur visite votre page ASP, vous pouvez utiliser une petite iframe invisible. Définissez simplement la cible iframe sur votre page ASP.NET.

Bien sûr, vous pouvez toujours appeler le webservice directement à partir de votre code ASP et y définir les cookies.

-1

Avez-vous essayé de rediriger via le navigateur du client?

Response.Redirect "http://localhost/WebServiceWrapper/CalledFromAsp.aspx?First=Steve&Last=Smith&DOB=11/25/2001&Gender=M" 
+0

@Downvoter: Je suppose qu'une explication serait hors de question? –

1

Votre demande au service Web est faite par votre serveur et non par le navigateur de l'utilisateur. Le cookie est renvoyé à la page .asp dans les en-têtes de réponse. Vous devez l'analyser et le définir sur le navigateur de l'utilisateur via Response.Cookies ("cookieName") = valeur

Questions connexes