我有一个受密码保护的ftp服务器。我希望我站点的用户能够通过单击按钮从ftp服务器下载,并且不允许他们知道密码。我一直在使用puppeteer进行身份验证,但是由于代码是写在服务器上的,因此会下载到我的服务器而不是客户端上。这是代码:
async function run() {
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
await page.authenticate({username:theUsername, password:thePassword});
await page.goto(theURL);
browser.close();
return page;
}
run();
res.send();
上面的方法有效,但是它在后端启动了一个浏览器,并且文件被下载到了我不想要的文件系统中。前端是用vue编写的,由于某种原因,我无法在pue上下载puppeteer前端。还有其他方法可以做到这一点吗?
答案 0 :(得分:0)
您可以使用环境变量从客户端安全地发送密码。有关此信息:https://dev.to/deammer/loading-environment-variables-in-js-apps-1p7p
请特别注意Vue,您需要在环境变量前添加前缀。因此,您需要将VUE_APP_附加到所有内容,而不是MY_VAR,因此它将是VUE_APP_MY_VAR。
await page.authentication({ username: process.env.VUE_APP_USERNAME, password: process.env.VUE_APP_PASSWORD })