我希望使用express直接将pdf版本的网页呈现给浏览器.像express.render()这样的东西只将页面呈现为pdf
我找到了一个将HTML或URL转换为pdf的模块
https://github.com/marcbachmann/node-html-pdf
我需要知道的是如何直接在HTTP路由处理程序中使用来自该库的响应来响应PDF的请求,我宁愿不存储PDF,我只想动态渲染它,然后返回它作为缓冲区或浏览器的流
这是该模块提供的基本API:
var pdf = require('html-pdf');
pdf.create(html).toFile([filepath, ]function(err, res){
console.log(res.filename);
});
pdf.create(html).toStream(function(err, stream){
stream.pipe(fs.createWriteStream('./foo.pdf'));
});
pdf.create(html).toBuffer(function(err, buffer){
console.log('This is a buffer:', Buffer.isBuffer(buffer));
});
Run Code Online (Sandbox Code Playgroud)
我想使用这些方法之一流或缓冲区,并将其包装在路由处理程序中,如下所示:
router.get('invoice/pdf', function(req, res) {
res.status(200).send(..pdf data);
});
Run Code Online (Sandbox Code Playgroud) 我有一个节点端点,它接收 json 中的传入电子邮件,并带有来自 mailgun 的任何附件。
附件在一个 json 数组中(xxx.com 用于隐私)
attachments: '[{"url": "https://sw.api.mailgun.net/v3/domains/xxx.com/messages/eyJwIjpmYWxzZSwiayI6ImZhMTU0NDkwLWVmYzgtNDVlNi1hYWMyLTM4M2EwNDY1MjJlNCIsInMiOiI2NmU1NmMzNTIwIiwiYyI6InRhbmtiIn0=/attachments/0", "content-type": "image/png", "name": "ashfordchroming_logo.png", "size": 15667}]
Run Code Online (Sandbox Code Playgroud)
但是如果我在浏览器中输入网址:
我得到
{
"message": "Domain not found: xxx.com"
}
Run Code Online (Sandbox Code Playgroud)
我想要以最简单的方式在 HTML 中显示图像附件,我希望 URL 能够正常工作,因为 mailgun 存储了附件。
所以我只是想在 Node.js 的模板中呈现 url。
我是否需要将身份验证/API 密钥凭据附加到 URL 的前面才能执行此操作以进行测试并使其工作?
我想搜索一个字符串并屏蔽信用卡以确保安全。
"Hi here is my card number its visa 4242 4242 4242 4242"
"Hi here is my card number its visa 4242424242424242"
"Hi here is my card number its visa 4242-4242-4242-4242"
Run Code Online (Sandbox Code Playgroud)
应转换为:
"Hi here is my card number its visa **** **** **** 4242"
Run Code Online (Sandbox Code Playgroud)
我需要在 Javascript 客户端上执行此操作。我知道网络和 SO 上有很多资源和问题。
我找到了两个正则表达式,但都抛出错误:“未捕获的语法错误:无效或意外的令牌”
"Hi here is my card number its visa 4242 4242 4242 4242".match("(\d{4}-?){4}")
Run Code Online (Sandbox Code Playgroud)
和
"Hi here is my card number its visa 4242 4242 4242 4242".match(\b4\d{3}[ -]?\d{4}[ -]?\d{4}[ -]?\d{4}[ -]\b)
Run Code Online (Sandbox Code Playgroud)
我认为这些表达式与 …
我需要从字符串中提取波浪形括号模板标签。例如:
var str="Hello {{user}}, your reference is {{ref}}"
Run Code Online (Sandbox Code Playgroud)
我想将 {{..}} 之间的标签提取到一个数组中。例如:
["user","ref"]
Run Code Online (Sandbox Code Playgroud)
我该怎么做,例如使用 Regx - 我需要忽略括号内的任何空格,例如 {{ user}} 需要返回“user”