2016-04-23 1 views
0

J'ai créé un formulaire de connexion mobile de base dans Flex Builder 4.6 qui récupère un fichier XML à partir d'une API RESTful qui inclut une session_token qui doit ensuite être utilisée dans tous les appels suivants cette API. Il renvoie également d'autres informations utiles telles que le nom complet de l'utilisateur. Je souhaite stocker ce fichier XML localement, puis récupérer le fichier session_token à volonté à partir de n'importe quel onglet de l'application.Flash Flex stockant localement le XML renvoyé par l'API RESTful dans l'application mobile

Voici la forme

<?xml version="1.0" encoding="utf-8"?> 
    <s:View xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark" 
    xmlns:session="services.session.*" 
    title="HomeView"> 
<fx:Script> 

    <![CDATA[ 

      protected function LoginButton_clickHandler(event:MouseEvent):void 
     { 
      var strXmlTextInput2:String = "<dfapi><email>" + emailInput.text + "</email><password>" + passwordInput.text + "</password><duration>7200</duration></dfapi>"; 
      GetSessionResult.token = session.GetSession(strXmlTextInput2); 
      // unhide below to go to next view 
      // navigator.pushView(views.detailView); 
     } 
    ]]> 


</fx:Script> 

<fx:Declarations> 
    <s:CallResponder id="GetSessionResult"/> 
    <session:Session id="session"/> 
    <!-- Place non-visual elements (e.g., services, value objects) here --> 
</fx:Declarations> 
<s:VGroup x="60" y="35" width="200" height="218" horizontalAlign="left" verticalAlign="middle"> 
    <s:Label text="Email"/> 
    <s:TextInput id="emailInput" width="199" text="[email protected]"/> 
    <s:Label text="Password"/> 
    <s:TextInput id="passwordInput" width="201" text="123456"/> 
    <s:Label text="Session Token"/> 
    <s:TextInput id="textInput" width="200" text="{GetSessionResult.lastResult.session_token}"/> 
</s:VGroup> 
<s:Button id="LoginButton" x="126" y="261" label="Login" click="LoginButton_clickHandler(event)"/> 

Lorsque je clique sur le bouton, le jeton de session apparaît dans la session champ Token sur le même point de vue retour de

text="{GetSessionResult.lastResult.session_token} 

... donc cela fonctionne, mais comment puis-je sauvegarder le XML de sorte qu'il est disponible pour tous les onglets, les vues, etc. et aussi au démarrage de l'application? Comment est-ce que j'utilise la variable session_token dans les prochains appels à l'API (il doit être ajouté en tant que paramètre ....? Session_token = xxxxx, et je sais comment faire cela).

J'ai essayé de mettre en place et d'obtenir, mais j'ai peur que je sois trop débutant pour obtenir l'un des exemples que j'ai googlé au travail.

Répondre

0

Vous pouvez utiliser SharedObjects pour le faire. J'utilise dans mon application mobile pour stocker des données parce que mon application nécessite des travaux hors ligne. J'ai une liste de 5k + Itens, tous stockés dans des périphériques locaux fournis par SharedObjects. Fonctionne vraiment bien.