I'm trying to login to yahoo mail using CFHTTP. I read and pass the cookies, yet i'm still not succesful. Any ideas?
Feel free to plug this code into a blank cfm page. It will produces a useable output.
<CFHTTP Method="Get"
URL="
http://mail.yahoo.com/?.intl=us"
UserAgent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
Redirect="No">
<CFSET ChallengeStart=#Find(".cha
llenge value=",CFHTTP.FileContent
)#>
<CFSET ChallengeValue=#Mid(CFHTTP
.FileConte
nt,(Challe
ngeStart+1
8),28)#>
<CFSET uStart=#Find(".u value=",CFHTTP.FileContent
)#>
<CFSET uValue=#Mid(CFHTTP.FileCon
tent,(uSta
rt+10),13)
#>
<CFOUTPUT>
<b>GET LOGIN PAGE</b><br>
#CFHTTP.Header#<br><br>
<CFSET ThisCookie=#Left(CFHTTP.Re
sponseHead
er['Set-Co
okie'],(Fi
ndOneOF(";
",CFHTTP.ResponseHeader['S
et-Cookie'
])-1))#>
<CFSET FirstCookieName=#Left(This
Cookie,(Fi
nd("=",Thi
sCookie))-
1)#>
<CFSET FirstCookieValue=#Mid(This
Cookie,(Fi
nd("=",Thi
sCookie)+1
),Len(This
Cookie))#>
Cookie Name=#FirstCookieName#<br>
Cooki Value=#FirstCookieValue#<b
r>
</CFOUTPUT>
<CFHTTP Method="Post"
URL="
https://login.yahoo.com/config/login?"
UserAgent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
Port="443"
Redirect="No">
<CFHTTPPARAM Type="Cookie" Name="#FirstCookieName#" Value="#FirstCookieValue#"
>
<CFHTTPparam Type="FormField" name="login" Value="morgansowden">
<CFHTTPparam Type="FormField" name="passwd" Value="12rifko12">
<CFHTTPparam Type="FormField" name=".src" value="ym">
<CFHTTPparam Type="FormField" name=".md5" value="">
<CFHTTPparam Type="FormField" name=".hash" value="">
<CFHTTPparam Type="FormField" name=".js" value="">
<CFHTTPparam Type="FormField" name=".last" value="">
<CFHTTPparam Type="FormField" name="promo" value="">
<CFHTTPparam Type="FormField" name=".intl" value="us">
<CFHTTPparam Type="FormField" name=".bypass" value="">
<CFHTTPparam Type="FormField" name=".partner" value="">
<CFHTTPparam Type="FormField" name=".u" value="#uValue#">
<CFHTTPparam Type="FormField" name=".v" value="0">
<CFHTTPparam Type="FormField" name=".challenge" value="#ChallengeValue#">
<CFHTTPparam Type="FormField" name=".yplus" value="">
<CFHTTPparam Type="FormField" name=".emailCode" value="">
<CFHTTPparam Type="FormField" name="pkg" value="">
<CFHTTPparam Type="FormField" name="stepid" value="">
<CFHTTPparam Type="FormField" name=".ev" value="">
<CFHTTPparam Type="FormField" name="hasMsgr" value="0">
<CFHTTPparam Type="FormField" name=".chkP" value="Y">
<CFHTTPparam Type="FormField" name=".done" value="
http://mail.yahoo.com">
</CFHTTP>
<CFOUTPUT>
<b>POST LOGIN INFO</b><br>
#CFHTTP.Header#<br><br>
</CFOUTPUT>
<CFLOOP From="1" To="4" Index="Count">
<CFIF FindOneOF("; ",CFHTTP.ResponseHeader['S
et-Cookie'
][Count]) IS 0>
<CFSET ThisCookie=#CFHTTP.Respons
eHeader['S
et-Cookie'
][Count]#>
<CFELSE>
<CFSET ThisCookie=#Left(CFHTTP.Re
sponseHead
er['Set-Co
okie'][Cou
nt],(FindO
neOF("; ",CFHTTP.ResponseHeader['S
et-Cookie'
][Count])-
1))#>
</CFIF>
<CFSET CookieName=#Left(ThisCooki
e,(Find("=
",ThisCook
ie))-1)#>
<CFSET CookieValue=#Mid(ThisCooki
e,(Find("=
",ThisCook
ie)+1),Len
(ThisCooki
e))#>
<CFOUTPUT>
Cookie Name=#CookieName#<br>
Cookie Value=#CookieValue#<br><br
>
</CFOUTPUT>
</CFLOOP>
<CFHTTP Method="Get"
URL="#CFHTTP.ResponseHeade
r['Locatio
n']#"
UserAgent="Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"
Port="443"
Redirect="No">
<CFLOOP From="1" To="4" Index="Count">
<CFIF FindOneOF("; ",CFHTTP.ResponseHeader['S
et-Cookie'
][Count]) IS 0>
<CFSET ThisCookie=#CFHTTP.Respons
eHeader['S
et-Cookie'
][Count]#>
<CFELSE>
<CFSET ThisCookie=#Left(CFHTTP.Re
sponseHead
er['Set-Co
okie'][Cou
nt],(FindO
neOF("; ",CFHTTP.ResponseHeader['S
et-Cookie'
][Count])-
1))#>
</CFIF>
<CFSET CookieName=#Left(ThisCooki
e,(Find("=
",ThisCook
ie))-1)#>
<CFSET CookieValue=#Mid(ThisCooki
e,(Find("=
",ThisCook
ie)+1),Len
(ThisCooki
e))#>
<CFHTTPPARAM Type="Cookie" Name="#CookieName#" Value="#CookieValue#">
</CFLOOP>
<CFHTTPPARAM Type="Cookie" Name="#FirstCookieName#" Value="#FirstCookieValue#"
>
</CFHTTP>
<CFOUTPUT>
<b>RESULT OF LOGIN</b><br>
#CFHTTP.Header#<br><br>
#CFHTTP.ErrorDetail#<br><b
r>
#CFHTTP.FileContent#<br><b
r>
</CFOUTPUT>