簡體   English   中英

Express JS發送文件數組和json作為響應

[英]Express JS send array of files and json as response

我正在嘗試將一系列文件和一些其他屬性(這些屬性以json格式)發送回客戶端,以作為路由被點擊時的一種響應。 我對Node and Express相對較新,但是無論如何我都沒有找到解決方法。 我知道(並且已經成功嘗試過)將一個文件發送回客戶端。 我想發回的回復應該是這樣的

res.send([
          {
            name:'Floral dresses',
            date_added:'2016-10-11 06:52:39',
            designer:'Victoria',
            cover_photo: path.join(__dirname, '/images', '/clothes', '/cloth1.jpg'),
            photos: [
              path.join(__dirname, '/images', '/clothes', '/cloth1.jpg'),
              path.join(__dirname, '/images', '/clothes', '/cloth2.jpg'),
              path.join(__dirname, '/images', '/clothes', '/cloth3.jpg')
            ]
          },
          {
            name:'Vintage Dresses',
            date_added:'2016-02-08 18:12:09',
            designer:'Victoria',
            cover_photo: path.join(__dirname, '/images', '/clothes', '/cloth1.jpg'),
            photos: [
              path.join(__dirname, '/images', '/clothes', '/cloth1.jpg'),
              path.join(__dirname, '/images', '/clothes', '/cloth2.jpg'),
              path.join(__dirname, '/images', '/clothes', '/cloth3.jpg')
            ]
          }
        ];

cover_photophotos是保存在文件系統中的圖像。

如何在Node JS中實現此目標?

由於JSON不適用於傳輸(大量)二進制數據,因此建議將URL返回到圖像文件,並由Express提供它們。

完成目錄設置后,您將添加一個靜態文件處理程序

app.use('/images', express.static(path.join(__dirname, 'images')));

對於您的JSON,最簡單的方法是將路徑(相對於網站的根目錄)傳遞到圖像文件,以便客戶端可以下載它們(或構建完整的URL並以HTML格式提供)。

例如:

cover_photo: '/images/clothes/cloth1.jpg'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM