在ReactJS中显示从Node.js服务器收到的PDF文件?

时间:2019-03-04 00:25:38

标签: node.js reactjs

我正在尝试构建一个系统,用户可以在其中将pdf文件存储在服务器上,而另一个用户可以通过单击文件链接来查看这些pdf文件。

我正在尝试将文件存储在MySQL数据库中,并使用app.get()进行检索。我已经使用BLOB成功地将文件存储在数据库中,但是当我尝试检索它时,它是某种其他格式。

我还尝试过使用'express-fileupload'将文件存储在本地文件夹if (content != "")中,但是当我尝试检索文件位置时,这似乎也不起作用。收到文件位置后,我会将其发送回我的React应用程序,然后尝试使用embed和iframe标签将其打开。

我也尝试过'react-pdf','simple-react-pdf',但似乎无济于事。

下面是在发送pdf文件的服务器端编写的代码。我也尝试发送存储在以下代码中提供的位置的pdf文件的位置。但这也不起作用。

./uploads

1 个答案:

答案 0 :(得分:0)

这对我有用:

节点:

[
    {
        "_id": "5e7a7ed685d8f90017ac0fa5",
        "lat": 29.9974,
        "lng": 30.9673,
        "capacity": 120,
        "website": "www.baheya.org",
        "medical_org": {
            "_id": "5e7a7ed685d8f90017ac0fa4",
            "name": "Baheya Hospital",
            "pic_url": "https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcTQ-ZB6tppo9aB1k00mNTqcKbWclFT18ErrRSDv9tV5GYCf9L6B",
            "from": "01:00",
            "to": "01:00",
            "street": {
                "_id": "5e7a7ed685d8f90017ac0fa2",
                "name": "2 el nasr street",
                "area": {
                    "_id": "5e73fb48d340f50017ad1d15",
                    "name": "bolaq",
                    "city": {
                        "_id": "5e73eed2d340f50017ad1cdb",
                        "name": "Cairo",
                        "phase": 2,
                        "__v": 0
                    },
                    "__v": 0
                },
                "__v": 0
            },
            "type": "Hospital",
            "phone": {
                "_id": "5e7a7ed685d8f90017ac0fa3",
                "phone": "01234567896",
                "__v": 0
            },
            "__v": 0
        },
        "__v": 0
    },

.........

反应:

app.get("/getFile", function(req, res) {
  res.sendFile(__dirname + "/test.pdf");
});