Maison > Questions et réponses > le corps du texte
J'utilise le SDK Box pour NodeJS et j'ai une fonction pour télécharger des fichiers. J'ai juste besoin de configurer le téléchargement pour qu'il soit placé dans un sous-dossier du projet J'ai lu la documentation mais je ne trouve aucun paramètre pertinent
async function downloadBoxFile(fileID, fileName) { try { // Load configuration const config = loadConfiguration(); const { clientID, clientSecret, enterpriseID } = config.boxConfiguration; // Authenticate Box client const boxClient = boxAuthentication(clientID, clientSecret, enterpriseID); const fileReadStream = await boxClient.files.getReadStream(fileID, null, { fields: 'modified_at, size, sha1, owned_by' }); const writeStream = fs.createWriteStream(fileName); fileReadStream.pipe(writeStream); return new Promise((resolve, reject) => { fileReadStream.on('end', () => { writeLog('> File downloaded successfully:' + fileName); resolve(); }); fileReadStream.on('error', (error) => { console.log('Error downloading file:', error); writeLog('Error downloading file:', error); reject(error); }); }); } catch (error) { console.log('Error downloading file:', error); writeLog('Error downloading file:', error); throw error; } }
P粉6688042282023-09-17 15:57:39
J'ai réussi à résoudre ce problème en passant simplement le paramètre path à la fonction et en l'ajoutant au nom du fichier
const fullPath = path.join(folderPath, fileName); const writeStream = fs.createWriteStream(fullPath); fileReadStream.pipe(writeStream);