2010-10-20 6 views
0

Actuellement, nous utilisons GetHttpRequestData().headers pour obtenir l'adresse IP réelle de l'utilisateur. Cependant, nous sommes confrontés à la question suivante. lorsque nous essayons d'appeler la demande de service Web SOAP, nous recevons l'erreur suivante Premature end of file. J'ai déjà cherché sur le web et j'ai découvert qu'il y avait un bug dans ColdFusion 8.0.GetHttpRequestData() et demande de service Web SOAP dans ColdFusion 8

Je ne sais pas si ce bogue est encore résolu.

Existe-t-il une autre solution?

S'il vous plaît aidez-moi.

grâce

Répondre

0

Est la requête SOAP entrant à ColdFusion d'un client et qui est l'endroit où vous obtenez l'erreur ou est un utilisateur frappant une page coldfusion qui est ensuite fait une demande de savon à un autre service et que génère l'erreur?

+0

Voici l'affaire ... –

+0

J'ai développé Coldfusion Web Service (rien que Coldfusion Component) que le client peut utiliser pour accéder aux données. Le client fait une demande de service Web en utilisant SOAP. J'ai tous mes composants de service Web dans une direction \ webservice où j'ai le fichier application.cfm. Dans le fichier application.cfm, j'ai un fichier include (block.cfm). Le but de ceci pour s'assurer que quelqu'un ne pirate pas le site. Dans ce fichier, j'ai le code pour extraire l'adresse IP REAL du client en utilisant GetHttpRequestData(). Headers. C'est là que j'ai une erreur. Suivez, ce lien pour plus d'informations ... http: //www.petefreitag.com/item/733.cfm –

+0

Si vous commentez la ligne qui obtient l'adresse IP, cela fonctionne-t-il bien? Est-ce que cgi.remote_addr vous donnerait la même information? – Max

0

Nous avons eu le même problème. Je ne sais pas si vous avez déjà trouvé une solution, mais la solution de contournement que j'ai trouvée utilise getPageContext(). GetRequest(). GetHeader ("nom de l'en-tête ici") pour récupérer l'en-tête de requête que je recherche. Cela ne casse pas aux appels SOAP comme getHttpRequestData.