2010-01-04 3 views
0

J'essaie de créer un système de connexion où un utilisateur pourrait se connecter à l'intérieur d'un jeu flash sur say, example.com, et que les mêmes données de connexion seraient conservées pour tous les jeux sur example.com et aussi les jeux sur foo.com et bar.world.comPartager cookie/données entre plusieurs domaines et swf

Je suis nouveau aux objets partagés dans le flash ainsi si quelqu'un sait d'une manière de faire ceci en php, as3, html , js (ou un mélange de tous) alors ce serait génial.

(PS. Je préférerais ne pas utiliser une méthode qui nécessite un pont javascript pour récupérer les cookies comme cela est impossible pour les jeux qui sont joués sur les sites de jeu portail où seul un fichier swf est utilisé)

+0

un exemple de ce que je veux dire peut être vu dans https://www.mochigames.com/ jeux activés. –

Répondre

2

Cette est une solution dans AS3.

Vérifiez la doc pour SharedObject.getLocal(), il est ici:

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/net/SharedObject.html#getLocal()

Lorsque vous créez l'objet partagé, vous lui donnez un nom et éventuellement un « localPath », le localPath vous permet pour le rendre accessible depuis plusieurs swfs.

Le code suivant rendra l'objet partagé disponible pour tous les swfs de ce domaine.

var so:SharedObject = SharedObject.getLocal('loginInfo', '/'); 

Le partage d'un SharedObject entre plusieurs domaines est explicitement interdit par le modèle de sécurité. Vous pourriez être en mesure de créer un swf qui prend en charge SharedObject et le charger à l'exécution à partir de example.com. Cela fonctionnerait autour du problème de sécurité.

+0

Je ne comprends pas ce que vous voulez dire par ce dernier bit, Comment les mochiads le feraient-ils alors? Utilisation de leur emballage pour encapsuler le jeu réel et donc le jeu est techniquement toujours sur le même domaine? –

+0

Il y a 2 façons de le faire: 1. Chargez un wrapper de example.com qui chargera le jeu depuis whereever.com. 2. Chargez le jeu depuis where.com et dans le jeu, chargez un module de connexion depuis example.com. Vous auriez probablement du singe avec des trucs de sécurité, mais je pense que ça marcherait. – ablerman

Questions connexes