i believe a part number of you there want their application allow the user to enter google account credential information to access the page, right? It's like i were faced off in my project. So how we will do it ?
If you use webservice, here's the information you should send to air application :I believe to access protected google page it will asked thridparty login, right? Note: OAuth, AuthSub and ClientLogin will not allow you to remote interface specially page after login google. In this case i create a component which is called GoogleBrowser.mxml and here the codes:
Google Account Credential Information and CallBack Url (the next url you want go after login)
<?xml version="1.0" encoding="utf-8"?> <mx:Window xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="600" height="600" backgroundColor="#242424" creationComplete="init()" > <mx:Script> <![CDATA[ private var googleUserName:String = "yacobus.r@kiranatama.com"; private var googlePassword:String = "i_love_u"; private var nextUrl:String = "http://docs.google.com/a/kiranatama.com/Doc?docid=0AWbobJ8BSfPlZGcyaGtiYmJfMjlkajlwc3hncw&hl=en"; private function init():void{ browserStack.selectedIndex = 1; gdocHtml.addEventListener(Event.COMPLETE, onCompleteHandler); gdocHtml.location = nextUrl; } private function onCompleteHandler(event:Event):void{ gdocHtml.removeEventListener(Event.COMPLETE, removeListenerHandler); var additionalScript:String = '<script type="text/javascript">\n'+ "gaia_setFocus();\n" + "document.gaia_loginform.submit();\n"+ "</script>"; var username:String = googleUserName.split("@")[0]; var body:String = String(event.target.htmlLoader.window.document.body.innerHTML); body = body.replace('id="Passwd"','id="Passwd" value="'+googlePassword+'" '); body = body.replace('value="" class','value="'+username+'" class"'); body = body + addScript; gdocHtml.htmlLoader.window.document.body.innerHTML = body; browserStack.selectedIndex = 0; } private function removeListenerHandler(event:Event):void{ event.stopPropagation(); } ]]> </mx:Script> <mx:ViewStack id="browserStack" width="100%" height="100%"> <mx:Canvas width="100%" height="100%"> <mx:HTML width="100%" height="100%" id="gdocHtml" /> </mx:Canvas> <mx:Text id="loadingText" text="Loading ..." /> </mx:ViewStack> </mx:Window>
3 Response to "AutoLogin to google account in Air without Oauth"
You've finally found the perfect solution eh!
absolutely yes, after hundreds errors and trials hehehe
Good job... it has worked to me, not only for Google but another site. nice grabbing script, thank you.
Post a Comment