- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不断收到以下错误:
Error: write EPIPE
at errnoException (net.js:901:11)
at Object.afterWrite (net.js:718:19)
当我运行以下函数时:
router.route('/certificationService')
.post(function (req, res) {
var html = null,
certificate = req.body.certificate,
lang = req.body.lang,
now = new Date(),
dd = now.getDate(),
mm = now.getMonth() + 1,
yyyy = now.getFullYear();
if (dd < 10) dd = '0' + dd;
if (mm < 10) mm = '0' + mm;
switch (lang) {
case 'da':
var text = {
title: 'Certifikat',
first_line: 'Dette certifikat er givet til',
second_line: 'for gennemførelsen af certificeringen',
score: 'Score',
date: 'D.',
organization: 'Organisation'
};
break;
case 'en':
var text = {
title: 'Certificate',
first_line: 'This certificate was given to',
second_line: 'for the completion of certification',
score: 'Score',
date: 'The',
organization: 'Organization'
};
break;
case 'no':
var text = {
title: 'Sertifikat',
first_line: 'Dette sertifikatet er gitt til',
second_line: 'gjennomføring av sertifisering',
score: 'Score',
date: 'D.',
organization: 'Organisation'
};
break;
case 'de':
var text = {
title: 'Zertifikat',
first_line: 'Dieses zertifikat wird eine für gegebene',
second_line: 'die Umsetzung der zertifizierung',
score: 'Ergebnis',
date: 'D.',
organization: 'Unternehmen'
};
break;
default:
}
var data = {
firstname: certificate.user.profile.firstname,
lastname: certificate.user.profile.lastname,
organization: certificate.user.organization.name,
module_name: certificate.name,
medal: env + certificate.medal.image_path,
score: certificate.score,
date: dd + '-' + mm + '-' + yyyy,
show_score: certificate.show_score,
description: certificate.text,
company_logo: env + req.body.organization.logo_file_name,
company_name: req.body.organization.name,
text: text
};
// rendering the ejs file
ejs.renderFile('./templates/certificate.ejs', {data: data}, function (err, result) {
if (result) {
html = result;
} else {
res.end('An error occurred: ' + err);
console.log(err);
}
});
var options = {
filename: './user_resources/certificate/' + certificate.user.id + '/' + certificate.name.replace(/ +?/g, '_') + '.pdf',
format: 'A4',
orientation: 'portrait',
type: "pdf",
timeout: 30000
};
pdf.create(html, options).toFile(function (err, res) {
if (err) return console.log("This is where it goes wrong"+ err);
console.log(res);
});
var file = {
originalname: certificate.name.replace(/ +?/g, '_') + '.pdf',
path: './user_resources/certificate/' + certificate.user.id + '/'
};
var media = new Media(file, './user_resources/certificate/' + certificate.user.id + '/');
var token = jwt.encode({
mediaObject: media
}, require('../secret')());
res.status(200).json(token);
});
所以我四处寻找解决方案,有人说:
Make sure both imagemagick and graphicsmagick are installed on your machine.
所以我使用以下方法安装了它:
$ sudo add-apt-repository ppa:dhor/myway
$ sudo apt-get update
$ sudo apt-get install graphicsmagick
然而没有任何运气。
以下是我的模块
的依赖:
var fs = require('fs'),
jwt = require('jwt-simple'),
pdf = require('html-pdf'),
path = require('path'),
ejs = require('ejs'),
async = require('async'),
DataTypes = require("sequelize"),
PDFKit = require('pdfkitjs'),
gm = require('gm').subClass({imageMagick: true}),
ffmpeg = require('fluent-ffmpeg'),
sys = require('util'),
exec = require('child_process').exec,
我真的希望你们中的一些人能够帮助我!
最佳答案
您会在某些操作系统中遇到此错误。要为任何操作系统修复此问题,只需指定 phantomjs:
var phantomjs = require('phantomjs');
var options = {
phantomPath: phantomjs.path,
filename: './user_resources/certificate/' + certificate.user.id + '/' + certificate.name.replace(/ +?/g, '_') + '.pdf',
format: 'A4',
orientation: 'portrait',
type: "pdf",
timeout: 30000
};
关于javascript - 错误 : write EPIPE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34882328/
我不断收到 EPIPE 错误,在标准输入流上,我找不到原因: 这是我的代码: var checkFile = function(data, callback){ var child_proces
我目前正在测试我的网络代码。这涉及通过 IPv4 环回地址 (127.0.0.1) 建立连接。不幸的是,程序经常(并非总是)在发送数据时给出 EPIPE 错误。 我正在使用伯克利网络套接字和 libe
我有一个 C socket 客户端程序,其中一个线程用于接收数据,另一个用于发送。如果服务器关闭,则发送者会收到EPIPE。如果我重新连接同一个套接字,那么它可以接收数据,但发送者仍然会收到EPIPE
通过调用 signal() 忽略 SIGPIPE 后,write() 调用可能会失败,errno 设置为等于 EPIPE。我是否仍需要像下面的示例那样关闭文件描述符? if (write(sock_f
我正在尝试使用 JavaPhoenixChannels ( https://github.com/eoinsha/JavaPhoenixChannels ) 连接自定义聊天服务器。 我连接套接字并抛出
我不断收到以下错误: Error: write EPIPE at errnoException (net.js:901:11) at Object.afterWrite (net.js:718:19)
我的代码有问题,但我不知道 E 日志报告在哪里 04-08 05:47:46.745: E/Upload Server(20080): Starting : /storage/sdcard1/Mus
我的代码有问题,但我不知道 E 日志报告在哪里 04-08 05:47:46.745: E/Upload Server(20080): Starting : /storage/sdcard1/Mus
我用C写了一个运行在Linux上的单线程异步服务器:套接字是非阻塞的,至于轮询,我使用的是epoll。基准测试显示服务器运行良好,根据 Valgrind 的说法,没有内存泄漏或其他问题。 唯一的问题是
if @block rd, wr = IO.pipe @pid = fork do $0 = "Forked child from Page #{@path}" rd.clos
我有一个 Broken pipe (Errno::EPIPE) 错误弹出,我不明白它是什么或如何修复它。完整的错误是: example.rb:19:in `write': Broken pipe (E
我有一个在谷歌计算上运行的 nginx-gunicorn-flask 设置 我不断从 gunicorn 得到以下信息: [2019-04-19 20:50:49 +0000] [3345] [DEBU
我使用 html-pdf 模块生成 pdf,使用以下代码: var ejs = require('ejs'); var fs = require('fs'); var pdf = require('h
我在我的 iOS 应用程序中遇到了 EPIPE 问题,并且它没有被 @try/@catch/@finally block 捕获。我怎样才能捕捉到这个信号(SIGPIPE,可能)...... 我已经在我
我只是练习一些关于 child_process @the link 的 node js 代码我的 Node 版本是 Windows 7 上的 V5.2.0。 // master.js var cp=r
我正在创建一些客户端套接字软件来从服务器读取事件。 (例如,流媒体股票报价)。 问题: .read(b); 立即返回值-1。这会导致无限循环,手机会变得很热。此外,对 s.isConnected()、
我正在使用 Node.JS + Mongoose + MongoDB。直到现在我的应用程序运行正常,现在尝试保存文档时: 保存操作: doc.save(function(err, d){ co
我有一个由 node.js 服务器加上其他文件和 HTML 文件组成的应用程序。HTML 文件是我的客户端,它必须与 node.js 服务器通信。node.js 服务器使用与其他 node.js 文件
我在 GNU/Linux 下用 C 语言编程的多线程服务器中有这种奇怪的行为。当它正在发送数据时,最终会被 SIGPIPE 中断。因此,我设法忽略了 send() 中的信号并在每次操作后处理 errn
我试图以编程方式截取 Android 屏幕的屏幕截图。我已经完成了以下代码: private void getsnap(){ try{ Process sh = Runtime
我是一名优秀的程序员,十分优秀!