Domanda

Voglio trasferire i dati tra un'app per smartphone e un sito Web. Quali sono i modi convenzionali e non così convenzionali di farlo?

Ecco cosa ho pensato finora:

  1. Semplice GET / POST HTTP con dati rappresentati come stringa di array JSON, variazioni di questa come stringa crittografata / compressa come parametro.
  2. Webservice chiama (non sono sicuro che sia possibile, solo un'ipotesi)
  3. Comunicazione in due passaggi: Smartphone da / verso l'app desktop da / verso il sito Web) (ingombrante da sviluppare / utilizzare)

Inoltre, cosa devo considerare per evitare spamming / ficcanaso?

È stato utile?

Soluzione

Se i tuoi obiettivi sono convincenti, sicurezza e facilità di sviluppo. Vorrei che il client (telefono) facesse richieste al server su HTTPS usando POST. I dati inviati dovrebbero essere qualsiasi libreria disponibile per il tuo sistema di destinazione. Buone scelte sono i parametri con codifica URL, XML e JSON. Evita i protocolli binari.

L'aspetto negativo di questo approccio è l'utilizzo della connettività di rete da un dispositivo al servizio web potrebbe non essere disponibile o costoso, con il piano che l'utente ha. (questo sta diventando meno con l'attuale ondata di smartphone (iPhone / gPhone / Blackberry ecc.)) Questa è anche un'interfaccia di polling, quindi spingere i dati dal server al portatile è complicato e dipende dall'avvio da parte dell'utente di un'azione.

A seconda della piattaforma telefonica, è possibile utilizzare anche gli SMS per la comunicazione bidirezionale. La limitazione qui è privacy, larghezza di banda e costi. Gli SMS sono più costosi per inviare i dati IP in base al piano dell'utente. (e talvolta ricevere) Il trucco bidirezionale viene eseguito registrando un hook SMS nell'applicazione telefono. Pertanto, l'applicazione può essere avviata e notificata automaticamente alla ricezione di un determinato SMS.

Si prega di pubblicare informazioni aggiuntive, come le piattaforme di destinazione e posso discutere ulteriori opzioni.

Altri suggerimenti

Penso che i primi due siano più o meno la stessa cosa. Quello che vuoi fare è un HTTP Post se stai inviando molti dati, o OTTIENI con una stringa di query se c'è una quantità minore di dati. Sarà tutta una trasmissione non crittografata, quindi tienilo a mente quando usi HTTP.

Se si utilizza .NET Compact Framework e si sviluppa per Windows Mobile, l'approccio più semplice è utilizzare i servizi Web. Tuttavia, i servizi Web .NET serializzano tutto come XML dettagliato, il che rende la dimensione dei dati inviati avanti e indietro più grande di quanto deve essere. L'uso di JSON è un buon modo per ridurre le dimensioni dei dati, anche quando si utilizzano i servizi Web .NET (il trucco è inviare un intero documento JSON come singolo parametro). Ridurre al minimo le dimensioni dei dati trasferiti è particolarmente importante per le applicazioni Smartphone, poiché il trasferimento dei dati verrà probabilmente effettuato su una rete cellulare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top