You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

TypeScript中Blob类型变量声明报错,图片存MySQL接口失效求助

问题:如何在TypeScript中正确声明Blob类型并处理图片上传至MySQL?

我正在开发一个项目,需要将App中的图片传输到后端,再存入MySQL服务器。我用TypeScript写了如下保存数据的函数:

const saveImage = async function saveData(email: string, image: Blob): Promise<null> {
    return new Promise<null>(((resolve, reject) => {
        const query = "INSERT INTO ProfilePics SET ?"

        const insertImage = {
            email: email,
            image: image
        }

        connection.query(query, insertImage, (err: MysqlError | null, result: OkPacket | null) => {
            if (err != null) {
                reject(err.message); return;
            }

            if (result != null) {
                if (result.affectedRows == 1) {
                    resolve(null); return;
                } else {
                    reject('Unknown error 1 saving data to database.'); return
                }
            } else {
                reject('Unknown error 2 saving data to database.'); return
            }
        });
    }));
};

这段代码里Blob关键字未被高亮,且系统提示“Blob不是预期的标识符”错误。

同时我编写了用于接收App端图片数据的POST接口,但完全无法正常工作:

router.post('/set-image', async (req: Request, res: Response, next: NextFunction) => {
    const image: Blob = req.body.image;
    const email: string | undefined =  req.app.locals.user.email;

    if (typeof  data !== 'Blob') {
        res.status(500).json({ error: 'The data must be a Blob.' }); return;
    }

    if (email === undefined) {
        res.status(500).json({ error: 'You must sign in to do that' }); return;
    }

    try {
        await data_functions.saveData(email, image);
        res.status(200).json({ success: 'The image was submitted.' });
    } catch (err) {
        res.status(500).json({ error: err }); return;
    }
});

请问如何正确将这些变量声明为Blob数据类型?

内容的提问来源于stack exchange,提问作者AwesomeCuber

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 03:15:22