Sto esplorando le API di Google, principalmente l'API di Places. Poiché il numero di richieste all'API di Google Places è limitato a 100.000, sto cercando modi per ridurre al minimo il numero di richieste inviate all'API. Stavo pensando di utilizzare un database per archiviare le risposte ricevute in precedenza, quindi in futuro potrei recuperarle senza fare richieste all'API e farò richiesta all'API solo in un caso se i dati necessari non fossero stati precedentemente memorizzati nel mio database .Quale Google posiziona i risultati delle query dell'API possono essere archiviati in un database?
Secondo Google termini API di utilizzo, in particolare la sezione 10.1.3 Restrictions against Copying or Data Export, non è consentito per memorizzare i dati a tempo indeterminato, ma è legale mettere in cache temporaneamente:
Non si deve pre-fetch, cache, o memorizzare qualsiasi Contenuto, eccetto che è possibile memorizzare: (i) quantità limitate di Contenuto allo scopo di migliorare le prestazioni della propria Implementazione dell'API di Maps se lo si fa temporaneamente (e in nessun caso per più di 30 giorni di calendario), in modo sicuro, e in un modo che non consente l'uso del Contenuto al di fuori del Servizio; e (ii) qualsiasi identificatore di contenuto o chiave che la documentazione delle API di Maps consente specificamente di memorizzare. Ad esempio, non è necessario utilizzare il Contenuto per creare un database indipendente di "luoghi" o altre informazioni di elenchi locali.
Trovo questa sezione non ben spiegata. Posso archiviare tutti i dati ricevuti dall'API nel mio database per 30 giorni o solo id di luoghi? Perché in alcuni altri contesti ho letto che è consentito solo memorizzare gli ID. L'ho capito in questo modo: posso memorizzare gli ID dei luoghi a tempo indeterminato, ma posso utilizzare l'intero dato solo per 30 giorni.
Poiché ho letto le API di Google solo per un paio di giorni, forse ho perso alcuni termini di utilizzo, quindi sarei davvero grato se potessi aiutarmi.
Qualsiasi suggerimento su come ridurre al minimo il numero di chiamate alle API o condividere alcune esperienze relative a progetti reali utilizzando tali API sarà molto apprezzato. Inoltre, se potessi suggerirmi alcune API alternative che potrebbero fornire funzionalità simili, sarebbe davvero utile.
Grazie in anticipo!
Mi sono imbattuto nella tua risposta. Devo mostrare un elenco di luoghi più vicini alla posizione di un utente e avrei bisogno di memorizzare le coordinate LAT/LNG. Di solito, userei l'API di Places per ottenere questi. Non sono autorizzato a memorizzarli in un database per l'ordinamento successivo o gli algoritmi di distanza. Ma, sono autorizzato a "rappresentare" i Geocod nella mia "griglia", quindi utilizzare il risultato una volta, calcolare il posizionamento sulla mia griglia e salvare QUESTI dati? –
Non ho lavorato con l'API di Google Places da molto tempo, quindi prendi questo con un pizzico di sale, ma sembra che quello che vuoi fare non sia probabilmente permesso. Puoi memorizzare nella cache la risposta non elaborata per 30 giorni, quindi se il tuo utente si trova nello stesso punto, puoi colpire la cache per ottenere il risultato. Non dovresti assolutamente prefetch o creare il tuo database personale di posti. –
@ Riël Sto avendo una situazione simile, puoi condividere quale metodo usi? http://stackoverflow.com/questions/42235025/how-to-get-latitude-and-longitude-for-a-place-in-an-isomorphic-application-on-se –