2010-10-07 3 views
4

Vous cherchez à créer un widget javascript interactif en utilisant ruby-on-rails qui peut être placé sur n'importe quel site Web.Création de widgets interactifs ajax javascript dans ruby ​​/ rails

Je suis capable de créer un widget de base. C'est assez simple (par exemple en utilisant document.write) Cela fonctionne très bien pour prendre des données de mon serveur et le mettre dans le widget, mais c'est très statique. Mais comment créer quelque chose de plus dynamique/interactif/ajax? Je veux être en mesure de faire des appels ajax en utilisant link_to_remote ou quelque chose et être capable de tirer des données de mon serveur et mettre à jour le widget comme un utilisateur interagit avec lui.

Des idées? Si quelqu'un peut me diriger dans la bonne direction, ce serait formidable.

Merci!

Répondre

1

Étant donné que votre objectif est un widget pouvant être utilisé depuis n'importe quel site Web, vous ne pouvez pas utiliser "Ajax" en raison de la règle Same origin security.

Ce que vous pouvez faire est de créer un widget interactif qui utilise le JSONP pattern pour récupérer des données à partir de n'importe quel serveur. À l'aide de JSONP, votre widget peut interagir avec votre site Web, même s'il fait partie d'une autre page Web qui n'a rien à voir avec votre site Web.

Il existe des bibliothèques pour utiliser facilement JSONP depuis votre programme Javascript. Ils comprennent:

et d'autres. Dans tous les cas, vous pouvez certainement utiliser Rails comme backend.

0

Je suggère plutôt que de développer une nouvelle spécification de widget, que vous jetez un oeil à la W3C Widgets specification et l'implémenter dans Ruby.

Il existe un projet Apache (Wookie) dont une partie du code a déjà été portée sur Ruby. Wookie utilise un proxy côté serveur pour éviter les mêmes problèmes d'origine pour les widgets Ajax.

Questions connexes