Sendgrid-nodejs: PDF-Ρ„Π°ΠΉΠ» Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ Base64 ΠΊΠ°ΠΊ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅

Π‘ΠΎΠ·Π΄Π°Π½Π½Ρ‹ΠΉ Π½Π° 15 Π°ΠΏΡ€. 2016  Β·  4ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ  Β·  Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: sendgrid/sendgrid-nodejs

Π£ мСня Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ» PDF Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ base64, ΠΈ я Ρ…ΠΎΡ‡Ρƒ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊ элСктронному ΠΏΠΈΡΡŒΠΌΡƒ. Когда я ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»ΡΡŽ Π΅Π³ΠΎ со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊ ΠΎΡ‚ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΌΡƒ элСктронному ΠΏΠΈΡΡŒΠΌΡƒ ΠΏΡ€ΠΈΠΊΡ€Π΅ΠΏΠ»Π΅Π½ ΠΏΠΎΠ²Ρ€Π΅ΠΆΠ΄Π΅Π½Π½Ρ‹ΠΉ PDF-Ρ„Π°ΠΉΠ»:

email.addFile({
    filename: 'my-file.pdf',
    content: aBase64EncodedPDF,
    contentType: 'application/pdf',
}); 

Π‘Π°ΠΌΡ‹ΠΉ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ строку base64 Π² качСствС влоТСния с ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ΄ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅. Π”ΡƒΠΌΠ°ΡŽ, Π²Ρ‹ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ…ΠΎΡ‚Π΅Π»ΠΈ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ:

email.addFile({
    filename: 'my-file.pdf',
    content: new Buffer(aBase64EncodedPDF, 'base64'),
    contentType: 'application/pdf',
}); 

ВсС 4 ΠšΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ строку base64 Π² качСствС влоТСния с ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΌ Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠ΄ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΊΠΎΠ½Ρ†Π΅. Π”ΡƒΠΌΠ°ΡŽ, Π²Ρ‹ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ…ΠΎΡ‚Π΅Π»ΠΈ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ:

email.addFile({
    filename: 'my-file.pdf',
    content: new Buffer(aBase64EncodedPDF, 'base64'),
    contentType: 'application/pdf',
}); 

@ deaks-kt, спасибо за ваш вклад!

@danielflippance ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ Π»ΠΈ это Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ?

Бпасибо Π·Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π£Π΄Π²ΠΎΠΈΡ‚ Π»ΠΈ это Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ объСм ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ памяти? IE: Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Ρƒ мСня Π±ΡƒΠ΄Π΅Ρ‚ строка base64 ΠΈ Π±ΡƒΡ„Π΅Ρ€, содСрТащий Ρ‚Ρƒ ΠΆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Если это Ρ‚Π°ΠΊ, это Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ использованиС памяти Π½Π° Π½Π°ΡˆΠΈΡ… сСрвСрах, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ„Π°ΠΉΠ»Ρ‹ PDF довольно большиС, поэтому Π² нашСм случаС это Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚. Π― ΠΏΠΎΡΠΌΠΎΡ‚Ρ€ΡŽ, ΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΈ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±ΡƒΡ„Π΅Ρ€ ΠΏΠ΅Ρ€Π΅Π΄ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³ΠΎΠΌ Π² base64.

Π― ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°ΡŽ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ Π²Π΄Π²ΠΎΠ΅ большС. Π’Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ 3 Π±Π°ΠΉΡ‚Π° Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 4 Π±Π°ΠΉΡ‚Π° Base64, Ρ‡Ρ‚ΠΎ Π½Π° 25% мСньшС, Π½ΠΎ я оТидаю, Ρ‡Ρ‚ΠΎ для массива Π±ΡƒΠ΄ΡƒΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ расходы. Если Π²Ρ‹ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ застряли ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ base64, я Π±Ρ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ запрос Π½Π° вытягиваниС β„– 219 ΠΈ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ https://github.com/form-data/form-data (это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ эта Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‡Π΅Ρ€Π΅Π· запрос) Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ base64 ΠΈΠ»ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π°ΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΡ‹ ΡƒΠΆΠ΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹ Π²ΠΎ врСмя Π² form.append

Π‘Ρ‹Π»Π° Π»ΠΈ эта страница ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ?
0 / 5 - 0 Ρ€Π΅ΠΉΡ‚ΠΈΠ½Π³ΠΈ