Відгуки: Практичне заняття підвищеного рівня складності "Налаштування середовища для розробки додатка в Google Cloud"

338913 відгуків

Sakshi S. · Відгук надано 5 місяців тому

Sridutt S. · Відгук надано 5 місяців тому

亦捷 吳. · Відгук надано 5 місяців тому

亦捷 吳. · Відгук надано 5 місяців тому

Ajinkya D. · Відгук надано 5 місяців тому

ADITHYA RAVICHANDIRAN S. · Відгук надано 5 місяців тому

Phuc P. · Відгук надано 5 місяців тому

Snigdha P. · Відгук надано 5 місяців тому

DANABOYINA P. · Відгук надано 5 місяців тому

满意

Ying Q. · Відгук надано 5 місяців тому

Marwa K. · Відгук надано 5 місяців тому

ANANTA S. · Відгук надано 5 місяців тому

Ranjith E. · Відгук надано 5 місяців тому

rez c. · Відгук надано 5 місяців тому

Pankaja M. · Відгук надано 5 місяців тому

Tawanda M. · Відгук надано 5 місяців тому

Sasin N. · Відгук надано 5 місяців тому

kohei s. · Відгук надано 5 місяців тому

Aakash P. · Відгук надано 5 місяців тому

must update flow test, and index.js failed create for fail parsing bucket name, etc const functions = require('@google-cloud/functions-framework'); const { Storage } = require('@google-cloud/storage'); const { PubSub } = require('@google-cloud/pubsub'); const sharp = require('sharp'); functions.cloudEvent('memories-thumbnail-generator', async (cloudEvent) => { console.log('FULL EVENT:', JSON.stringify(cloudEvent)); const data = cloudEvent.data || {}; // fallback parsing const bucketName = data.bucket || data.data?.bucket; const fileName = data.name || data.data?.name; console.log(`Bucket: ${bucketName}`); console.log(`File: ${fileName}`); if (!bucketName || !fileName) { console.error('Missing bucket or filename'); return; } if (fileName.includes('64x64_thumbnail')) { console.log('Thumbnail already exists'); return; } const ext = fileName.split('.').pop().toLowerCase(); if (!['jpg', 'jpeg', 'png'].includes(ext)) { console.log('Unsupported file type'); return; } const storage = new Storage(); const bucket = storage.bucket(bucketName); const filenameWithoutExt = fileName.substring( 0, fileName.length - ext.length - 1 ); const newFilename = `${filenameWithoutExt}_64x64_thumbnail.${ext}`; try { const [buffer] = await bucket.file(fileName).download(); const resizedBuffer = await sharp(buffer) .resize(64, 64, { fit: 'inside', withoutEnlargement: true, }) .toFormat(ext) .toBuffer(); await bucket.file(newFilename).save(resizedBuffer, { metadata: { contentType: `image/${ext}`, }, }); console.log(`Created ${newFilename}`); const pubsub = new PubSub(); await pubsub .topic('topic-memories-423') .publishMessage({ data: Buffer.from(newFilename), }); console.log('Pub/Sub message published'); } catch (err) { console.error(err); } });

Randi S. · Відгук надано 5 місяців тому

Ranjith E. · Відгук надано 5 місяців тому

Takatoshi K. · Відгук надано 5 місяців тому

MS.LOVELY S. · Відгук надано 5 місяців тому

Shiva Shankar Prakash M. · Відгук надано 5 місяців тому

Pallavi S. · Відгук надано 5 місяців тому

Ми не гарантуємо, що опубліковані відгуки написали клієнти, які придбали продукти чи скористалися ними. Відгуки не перевіряються Google.