JavaScript is required to use Bungie.net

#Authentication

publicado originalmente en:BungieNetPlatform
9/8/2015 3:42:01 PM
5

Provider Authentication in WebViews and InAppBrowser

I'm working on a companion app using Ionic (AngularJS on top of Cordova, seemingly). I'm pretty new to the framework so there are probably things I don't fully grasp just yet. However, I am having a good deal of trouble authenticating. I've seen a ton of server-side authentication examples, but I want to steer clear of them, as I don't want to request and handle ANY credentials on my end. As I look for a solution here, I may explore setting up a quick PSN auth to test with my own account because I'm pretty blocked by authentication at this point. My current workflow consists of using Cordova InAppBrowser to open up an authentication dialog and try to grab the cookies stored in the browser after a successful authentication attempt. At this point, here's what I've got: 1) Open a visible window for the auth provider (PSN: https://www.bungie.net/en/User/SignIn/Psnid?bru=%252f) 2) Allow user to authenticate, let the redirects happen. 3) Open up the Bungie account page (I've tried with the signin link again as well), and run JS on loadstop (Cordova event) on that page to fetch cookies using "document.cookie" For what should be pretty immediately apparent reasons, I'm not getting some of the more important cookies, since they're not returned as part of the response. I get the bungled, bungleloc, and some others but am missing bungleatk. I can't seem to catch the cookies set in one of the redirects (it looks like the missing bungle* cookies are set in a call to Bungie from a PSN redirect with code=XXXX. Has anyone used a similar approach to authenticate, and how have you gotten around the limited ability to fetch cookies using a cross-platform app builder? Are there any thoughts on how to handle the authentication using just WebViews or Cordovas InAppBrowser?
English
#Authentication

Publicando en idioma:

 

Pórtate bien. Echa un vistazo a nuestro Código de conducta antes de publicar tu mensaje. Cancelar Editar Crear escuadra Publicar

Ver el resto del tema
  • To be specific, I am using Phonegap for my implementation, so I'm not totally sure the callback I am using is unique to the framework. [url]http://docs.phonegap.com/en/2.7.0/guide_plugin-development_index.md.html[/url] Basically you call a native function from Javascript and return a response using [b]cordova.exec(function, errorFunction, 'service', 'action', [args])[/b]. Here's the javascript side [url]http://pastebin.com/ZZAmCax8[/url] and here's the [url=http://pastebin.com/wrnzGBGS]iOS side[/url]. A few things to note: - postRequest is not yet implemented because I have been mostly working on my interface through MAMP and PHP, however it should just be a matter of changing the request to POST and adding the post data. - database queries are sent as SQL strings because I don't like Objective C that much (but really they should be implemented natively as well because being an interface, this means my PHP implementation is sending raw SQL queries over POST, which is fine for local testing, but not if I was ever going to make what I'm doing into a web browser app) - You would need to implement the interface if you want to support Android, since I don't own any devices, its not high on my list - You will probably want to implement a queuing system that will halt requests and try to re-authenticate before proceeding - Totally and utterly a work in progress so if something doesn't work, ehh :p

    Publicando en idioma:

     

    Pórtate bien. Echa un vistazo a nuestro Código de conducta antes de publicar tu mensaje. Cancelar Editar Crear escuadra Publicar

No se te permite acceder a este contenido.
;
preload icon
preload icon
preload icon