Π£ ΠΌΠ΅Π½Ρ Π΅ΡΡΡ ΡΠ°ΠΉΠ» 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',
});
@ deaks-kt, ΡΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° Π²Π°Ρ Π²ΠΊΠ»Π°Π΄!
@danielflippance ΠΏΠΎΠΌΠΎΠ³Π»ΠΈ Π»ΠΈ ΡΡΠΎ ΡΠ΅ΡΠΈΡΡ Π²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ?
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ Π·Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. Π£Π΄Π²ΠΎΠΈΡ Π»ΠΈ ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ? IE: ΡΠ΅ΠΏΠ΅ΡΡ Ρ ΠΌΠ΅Π½Ρ Π±ΡΠ΄Π΅Ρ ΡΡΡΠΎΠΊΠ° base64 ΠΈ Π±ΡΡΠ΅Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΡ ΠΆΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΡΠ»ΠΈ ΡΡΠΎ ΡΠ°ΠΊ, ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠ²Π΅Π»ΠΈΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠ°ΠΌΡΡΠΈ Π½Π° Π½Π°ΡΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ , ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ°ΠΉΠ»Ρ PDF Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΈΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ. Π― ΠΏΠΎΡΠΌΠΎΡΡΡ, ΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΈ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π±ΡΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³ΠΎΠΌ Π² base64.
Π― ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π²Π°Ρ, ΡΡΠΎ ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΡΡΠΈ Π²Π΄Π²ΠΎΠ΅ Π±ΠΎΠ»ΡΡΠ΅. ΠΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ 3 Π±Π°ΠΉΡΠ° Π½Π° ΠΊΠ°ΠΆΠ΄ΡΠ΅ 4 Π±Π°ΠΉΡΠ° Base64, ΡΡΠΎ Π½Π° 25% ΠΌΠ΅Π½ΡΡΠ΅, Π½ΠΎ Ρ ΠΎΠΆΠΈΠ΄Π°Ρ, ΡΡΠΎ Π΄Π»Ρ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ΄ΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ ΠΎΠ΄Ρ. ΠΡΠ»ΠΈ Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π°ΡΡΡΡΠ»ΠΈ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ base64, Ρ Π±Ρ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΠΎΠ²Π°Π» ΠΈΠ·ΡΡΠΈΡΡ Π·Π°ΠΏΡΠΎΡ Π½Π° Π²ΡΡΡΠ³ΠΈΠ²Π°Π½ΠΈΠ΅ β 219 ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ https://github.com/form-data/form-data (ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΡΡΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΠΎΡ) ΡΡΠΎΠ±Ρ ΡΠ·Π½Π°ΡΡ, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»ΠΈ Π²Ρ ΡΡΠ°Π½ΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ base64 ΠΈΠ»ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π΄Π°ΠΆΠ΅ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΡΠΌΡ ΡΠΆΠ΅ Π·Π°ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½Ρ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π² form.append
Π‘Π°ΠΌΡΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΉ
ΠΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΠ΅ ΡΡΡΠΎΠΊΡ base64 Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΌ Π²ΡΡΠ΅ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ Π²Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π½Π° Π΄ΡΡΠ³ΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅. ΠΡΠΌΠ°Ρ, Π²Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Ρ ΠΎΡΠ΅Π»ΠΈ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ: