[英]How to send pdf file from front-end to Nodejs server?
我使用html2pdf插件在應用程序的前端有一個pdf生成的文件。 我的支持者有一個nodemailer服務器,可以在其中附加文件並將其發送到我選擇的電子郵件中。 有沒有辦法將前端生成的pdf發送給Nodejs? 我也在用快遞
編輯:根據您的建議,我做了
**On the Client side**
var element = document.getElementById('element-to-print');
const elem = document.getElementById('html');
html2pdf().from(element).toPdf().get('pdf').then(function (pdf) {
window.open(pdf.output('bloburl'), '_blank');
var formData = new FormData();
formData.append("filename", pdf);
axios.post('/upload',formData).then(res => { console.log(res) })
// formData.append("uploadedFile", fileInputElement.files[0]);
})
在快遞應用上
app.post('/upload', fileUpload(), function(req, res) {
const sampleFile = req.files.uploadedFile;
// do something with file
res.send('File uploaded');
})
但是我收到來自index.js的錯誤
TypeError:無法讀取null的屬性“ uploadedFile”
<form method="post" enctype="multipart/form-data" action="/">
<div>
<label for="profile_pic">Choose file to upload</label>
<input type="file" id="profile_pic" name="profile_pic"
accept=".pdf">
</div>
<div>
<button>Submit</button>
</div>
為了在節點上接收它,您必須在同一路徑上定義一條新路由。
是。
因此,在您的客戶中。 你有類似的東西
var formData = new FormData();
formData.append("filename", "My awesome file");
formData.append("uploadedFile", fileInputElement.files[0]);
然后用類似Axios的東西發布
axios.post('/upload',formData).then(res => { console.log(res) })
在您的Express應用中,您可以執行以下操作
const express = require('express');
const fileUpload = require('express-fileupload');
const app = express();
app.post('/upload', fileUpload(), function(req, res) {
const sampleFile = req.files.uploadedFile;
// do something with file
res.send('File uploaded');
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.