我是 GraphQL 的新手,不完全理解它的可能性。但是我需要將我的 REST 請求轉換為 GraphQL 請求,這是我的問題,如何在 GraphQL 中實作以下代碼?
router.get('/image/:id', (req, res) => {
const path = 'images/' req.params.id '.jpg';
return res.sendFile(path, { root: 'src/' })
})
對于我的其他請求,我正在使用 mongodb 資料庫,我可以將我的 REST 請求轉換為 Graphql 請求,但是對于這段代碼,我不知道如何實作它。
先感謝您
uj5u.com熱心網友回復:
這不是您可以使用 GraphQL 重新創建的東西。它是資料查詢和檢索的標準,它期望來自 GraphQL 端點的回應是有效的 JSON。
最好的辦法是保留現有端點并在必要時使用它來獲取影像。
如果您不希望通過 GraphQL 回傳資料,您還可以嘗試對其進行 base64 編碼,這樣您就可以將二進制資料轉換為字串,然后再將其轉換回客戶端上的 Buffer。
決議器看起來像這樣:
import { promises as fs } from "fs";
const getImage = async (_, { id }) => {
const fileBuffer = await fs.readFile("images/" id ".jpg");
return fileBuffer.toString("base64");
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/461870.html
