Strapi:如何上传图像并将其链接到模型?
2019-01-18
5935
假设我有一个模型
Restaurant
,我想上传一张图片并将其链接到该模型。
根据
文档
,这应该分两个步骤进行:
- 创建新实体
- 上传并链接图片
目前,在我创建实体并尝试执行第 2 步后,它失败了。 注意:图像是从 React-Native 图像选择器 获取的。
这是我正在做的事情:
const data = new FormData();
data.append('files', image.uri);
data.append('refId', id);
data.append('ref', 'Restaurants');
data.append('field', 'Logo');
我看到的是图像没有上传。此外,从 Strapi 端进行调试时,我看到请求中包含所有这些数据作为
fields
。
我正在使用文档中提到的
FormData
,我遗漏了什么?
1个回答
事实证明,我需要向
files
键添加一些额外信息,以便
FormData
将其识别为文件,并且 Strapi 可以处理文件上传。
以下是有效的方法:
const data = new FormData();
data.append('files', {
uri: logo.uri,
name: `test.jpg`,
type: 'multipart/form-data'
});
data.append('refId', id);
data.append('ref', 'Restaurants');
data.append('field', 'Logo');
真正重要的是
type: 'multipart/form-data
。
还有一点需要说明,在
文档
中,还有另一个名为
source
的键。我没有使用它,似乎没有影响任何东西。请注意确定是否需要它。
Mohamed Moanis
2019-01-18