Android - Interfaccia Ruby Server - Mongodb

0

Mi sto distruggendo il cervello per alcuni giorni. Gestirò il mio scenario da te e spero che tu possa aiutarmi. Nella mia testa è così che va:

Ho un'app per Android.

Voglio che la mia app per Android faccia chiamate (funzioni) a un database MongoDB tramite un'interfaccia Ruby sul server.

es. L'app per Android invia un GET HTTP? con il nome della funzione, diciamo getFriends per questo utente

L'interfaccia di Ruby riceve questa richiesta dall'app, prende un thread da un pool di thread e chiama la funzione appropriata chiamata implementata in Ruby, al Mongodb.

L'interfaccia di Ruby ottiene i risultati da Mongodb e invia un POST HTML all'app per Android. Ecco come penso che funzioni.

Conosco il driver ruby per mongo db, e interagisco con il mongodb da ruby ma, come faccio a fare un ruby back end per ascoltare i messaggi in arrivo e se questi messaggi devono essere fatti tramite socket o un'interfaccia http ala Net :: http in ruby?

    
posta MRabRabbit 29.05.2014 - 08:06
fonte

1 risposta

1

Non vedo molto il punto in cui uso i socket qui - il protocollo HTTP dovrebbe adattarsi perfettamente alle tue esigenze. Inoltre, il server Ruby non dovrebbe inviare un POST HTTP con i risultati all'app per Android - non è così che funziona HTTP! L'app Android invia la richiesta POST al server e il server Ruby restituisce il risultato come risposta, che fa parte del POST HTTP inviato dall'app. Dietro le quinte, l'app per Android apre il socket TCP per inviare la richiesta e il server usa lo stesso socket per inviare la risposta.

In ogni caso, per creare un semplice server HTTP in Ruby puoi usare la gemma del Rack . In alternativa, puoi utilizzare l'applicazione web Rails in piena regola. L'utilizzo di Rails qui è piuttosto eccessivo, ma la maggior parte delle impostazioni viene eseguita automaticamente in modo che risulti più facile da configurare, e poiché Ruby on Rails è una parte così importante della cultura Ruby e influenza la maggior parte del suo ecosistema (abbastanza per molte persone per confondere RoR con Ruby stessa), puoi trovare molte più informazioni e supporto su di esso online. Potrebbe anche risultare più facile da sviluppare grazie al meccanismo di ricarica automatica di Rails.

    
risposta data 29.05.2014 - 10:42
fonte

Leggi altre domande sui tag