PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 23 → Problema al intentar iniciar sesión en un sitio web
Problema al intentar iniciar sesión en un sitio web
Débuté par Laurence GONZALEZ, 11 sep. 2018 16:43 - 1 réponse
Posté le 11 septembre 2018 - 16:43
Hola a todos,

Intento desesperadamente iniciar sesión en el siguiente sitio web pero no funciona: http://www.drawinflation.com/user
Enviar el formulario parece funcionar, pero cuando visito otra página (http://www.drawinflation.com/user/3979), siempre recibo el mismo mensaje de "Prohibido".

El nombre de usuario y la contraseña son correctos, funcionan cuando los ingreso directamente en el sitio, pero a través de Windev no funcionan. Este es mi código (en inglés), si alguien pudiera decirme dónde está el problema, lo agradecería mucho.

Gracias.

i, j are int
bExist is a boolean
bConnect is a boolean
bufResHttp is a Buffer
sform_build_id is a string
sCh1 is a string

HTTPRequest("http://www.drawinflation.com/user")
sCh1=HTTPGetResult(httpResult)
i=Position(sCh1,"form_build_id")
IF i>0 THEN
i=Position(sCh1,"=",i)+1
j=Position(sCh1,"/",i)
sform_build_id=StringDelete(NoSpace(Milieu(sCh1,i,j-i),sscAll),"""")
ELSE
Error("Impossible to login!")
RETURN
END

HTTPCreateForm("user-login")
HTTPAddParameter("user-login", "name", "****")
HTTPAddParameter("user-login", "pass", "****")
HTTPAddParameter("user-login", "form_build_id", sform_build_id)
HTTPAddParameter("user-login", "form_id", "user_login")
HTTPAddParameter("user-login", "op", "Log+in")
bExist=HTTPSendForm("user-login", "http://www.drawinflation.com/user",httpPost)

Multitask(-1)

IF bExist THEN
HTTPRequest("http://www.drawinflation.com/user/3979")
bufResHttp = HTTPGetResult(httpHeader)
IF Length(bufResHttp)>0 THEN
IF Position(bufResHttp,"Forbidden")=0 AND Position(bufResHttp,"ACCESS DENIED")=0 THEN
bConnect=True
END
END
END

IF bConnect=False THEN
Error("Unrecognized DI username or password!")
RETURN
END
Membre enregistré
158 messages
Posté le 14 septembre 2018 - 13:57
Hola. Lo normal es que ese sitio web devuelva algun tipo de información cuando tu envias el formulario. Deberias consultar las cabeceras de la respuesta HTTP del sitio. Puede ser un token, una cookie, ...

Un saludo

Rubén