2009-12-31 6 views
1

Curieux s'il y avait un moyen simple d'avoir un fail-safe sur google.load()et si google.load échoue?

Le capot probable que google ne peut pas livrer le fichier mais je peux est assez mince mais je pensais que ce pourrait être intéressant de avoir mon propre serveur être capable de fournir un basculement au cas où la demande bombes ou timeout ou quelque chose.

des pensées?

J'utilise MS Visual Studio 2008/C#

+0

Google dit: « GOOGLE NE JAMAIS PHAIL » – mauris

Répondre

0

Les chances de ce sont assez petits que cela tombe probablement dans la catégorie des choses sur-pensée. De façon réaliste, votre propre serveur est beaucoup plus susceptible de se déconnecter que l'installation de Google. À moins que vous n'ayez à traiter régulièrement des transactions valant des millions de dollars sur votre site, cela ne sera pas nécessaire (et probablement peu fiable).

Il existe un paramètre de rappel pour google.load, mais il est appelé en cas de succès plutôt qu'en cas d'échec. Je ne suis pas sûr de ce qui se passe en cas d'échec car je n'ai jamais été capable de charger l'API JS, mais pas le reste des fichiers JS hébergés par Google. Et c'est un peu le truc. Si vous pouvez appeler google.load en premier lieu, vous pouvez être sûr que les serveurs de Google sont joignables. Si, pour une raison insensée, les serveurs de Google sont en panne, alors l'objet google ne sera jamais défini en premier lieu. Je ne sais pas s'il existe une méthode officiellement documentée pour détecter les échecs, mais je suppose que vous pouvez juste détecter si l'objet google est défini et charger votre propre version hébergée des scripts à ce moment-là.

Si vous descendez cette route, vous pouvez la tester en pointant google.com vers quelque chose comme 0.0.0.0 dans votre fichier hosts. Je ne serais pas surpris s'il y a encore des problèmes à ce stade avec des événements comme onload, car l'événement a peut-être été déclenché avant même que le gestionnaire d'événements ne soit enregistré dans le cas de basculement.

+0

Je comprends que les serveurs de google sont bien plus fiables que les miens ... mais je n'aime pas l'idée de les laisser déterminer la stabilité de mon site. Depuis jquery devient si important j'aime garder le contrôle (mais partager la bande passante ;-) Merci pour les commentaires. – tnriverfish

+2

Assez juste. Bien que le point que l'autre gars a fait à propos des domaines Google bloqués est quelque peu atténué par l'utilisation du nom d'hôte 'googleapis.com'. Bien que vous puissiez toujours être bloqué par un filtre de contenu trop zélé. Il y a beaucoup de raisons différentes pour lesquelles une requête HTTP pourrait échouer vraiment. Cela vaut rarement la peine de les prendre en compte car, la plupart du temps, le processus de récupération des erreurs n'est pas parfait ou bien testé ou il est tout simplement irrécupérable. Considérez que votre temps est limité et que les ressources d'ingénierie sont probablement mieux dépensées pour d'autres choses. –

Questions connexes