Невозможно получить изображение E JS, используя express .stati c (Node JS) - PullRequest
0 голосов
/ 16 июня 2020

я пытаюсь собрать изображение из пути загрузки, используя e js, это мой маршрут файла

path

это мой код на 'dotemplate. js'

<div class="col-xs-12">
    <h2 style="text-align: center; font-size: 12pt" >ATTACHMENT</h2>
    <hr size="10px">
    <div>

        <img src="/picture-1592300001150.jpg" alt="Attachment photo" />
    </div>
            <div> 

это находится на 'контроллере. js' на пути "ticket"

 ExportPDFdeorder: async function(req, res, next){
    const dord = await lstTicketById(req.params.id);
    try {
        const name = await Date.now();
        ejs.renderFile(path.join(__dirname, './template', "deorder.template.ejs"),{Ticket: dord,}, (err, data) => {
            if (err) {
                console.log(err);
                return res.status(500).json({status: "error", data: err});
            } else {
                let options = {
                    "format": "A4",
                    "orientation": "portrait",
                    "border": {
                        "top": "1cm",            // default is 0, units: mm, cm, in, px
                        "right": "2cm",
                        "bottom": "1cm",
                        "left": "1cm"
                    },
                };
                pdf.create(data, options).toFile(`temp/${name}.pdf`, function (err, data) {
                    if (err) {
                        res.send(err);
                    } else {
                        var file= `temp/${name}.pdf`;
                        fs.readFile(file,function(err,data){
                            res.contentType("application/pdf");
                            res.send(data);


                        });
                    }
                });
            }
        });
    } catch (e) {
        console.log(e)
        return res.status(500).json({status: "error", data: "internal server error"});
    }
}

};

это мой код на 'сервере. js '

app.use('./ticket', express.static('uploads'))

app.listen (config.port, () => console.log (server started));

Я все еще не могу получить изображение из пути загрузки, может кто-нибудь помогите подскажите что не так?

Ответы [ 2 ]

0 голосов
/ 18 июня 2020

я уже решил эти вещи, я использую <img src="http:/localhost:3000/users1592300001150.jpg" alt="Attachment photo" />

0 голосов
/ 17 июня 2020

Чтобы получить изображение в папке c stati:

1) Настройте приложение:

app.use('/ticket', express.static('uploads'));

2) В вашем представлении откройте что-нибудь в папке uploads вот так:

<img src="/ticket/picture-1592300001150.jpg" alt="Attachment photo" />
...