1

Je dois télécharger un fichier volumineux (plus de 300 Mo) via mon serveur de nœuds hébergé dans Google App Engine. Je suis en mesure de télécharger des fichiers en utilisant xhr.upload et son fonctionnement bien en local, mais dans GAE je reçois 413 - demande entité est trop grande, il semble que GAE a une restriction de 32 Mo pour la taille du contenu. En explorant, je suis tombé sur google API BlobStore, mais il semble que cela ne supporte pas NodeJS.Télécharger des fichiers volumineux via le serveur express node.js, hébergé dans GAE

Pouvez-vous me suggérer quelle est la meilleure approche pour cela?

Merci d'avance.

Répondre

1

Vous pouvez télécharger des fichiers d'une taille maximale de 5 Go directement dans Google Cloud Storage. Il n'est pas nécessaire d'utiliser (et de payer) votre instance App Engine pour cette tâche.

Vous pouvez le faire en définissant une URL de téléchargement dans votre formulaire de téléchargement de fichier. Regardez l'API Cloud Storage.

+0

Merci pour votre réponse. Je vais essayer Cloud Storage API, Est-ce que cette API supporte nodejs? ... Disons, j'ai besoin de lire le flux pour faire une validation côté serveur avant de le télécharger sur le stockage. Toutes les autres suggestions à télécharger via GAE. – MuthuD

+0

GAE ne prend pas en charge le streaming. Vous ne pouvez donc pas l'utiliser pour travailler avec des fichiers volumineux. Vous pouvez utiliser des instances de Compute Engine pour effectuer ce travail. C'est ce que j'utilise dans FileMambo.com pour créer des archives lorsqu'un utilisateur veut télécharger plusieurs fichiers à la fois - une instance de Compute Engine extrait des fichiers de Cloud Storage, les ajoute à une archive par morceaux et les transmet à l'utilisateur. Sur Compute Engine, vous pouvez utiliser Node.js ou n'importe quel autre environnement d'exécution. –

+0

Ok, merci Andrei ... va essayer de cette façon – MuthuD