【问题标题】:How to upload a file with strapi and get the URL?如何使用strapi上传文件并获取URL?
【发布时间】:2019-02-17 20:09:45
【问题描述】:

我设法上传了一张图片,但不明白如何获取它的网址。

我正在使用 reactjs。我的 jsx:

import Strapi from 'strapi-sdk-javascript/build/main';
const apiUrl = process.env.API_URL || 'http://localhost:1337'
const strapi = new Strapi(apiUrl);

<form onSubmit={this.uploadFile}>
    <input ref={form=> this.form= form}  type="file" name="files"/>
    <input type="submit" value="Submit"/>
</form>

以及功能:

 uploadFile = async (e) => {
    e.preventDefault();
    let a = new FormData(this.form);
    const response = await strapi.upload(a);

文件正在上传,但响应只是收到 true 值,我没有得到完整的响应。

我试图了解strapi docs,但不明白如何实现它: https://strapi.io/documentation/3.x.x/guides/upload.html#examples

提前非常感谢

【问题讨论】:

    标签: reactjs file-upload strapi


    【解决方案1】:

    上传文件时,您通常会收到如下响应:

        {
            "id": 5,
            "name": "key.jpg",
            "hash": "045a33af53ad4efe9dd0cdc80173e792",
            "sha256": "hLIpLA5JHEKfjfnAhgr9HqvKpNkm1QH1J-kvrIkGogQ",
            "ext": ".jpg",
            "mime": "image/jpeg",
            "size": "4238.72",
            "url": "/uploads/045a33af53ad4efe9dd0cdc80173e792.jpg",
            "provider": "local",
            "public_id": null,
            "created_at": 1551723193383,
            "updated_at": 1551723193411,
            "related": [
            ]
        }
    

    【讨论】:

    • 您知道如何将另一个密钥放入服务器上的该对象中。因为我需要一个名为link 的额外密钥,它与url 相同,但名称应为link。
    • 请问,/uploads/[number].jpg 之前的 url 的基础是什么?
    【解决方案2】:

    如果您在开发环境中工作,则评估上传到 Strapi 的图像的基本 URL 是 http://localhost:1337。

    【讨论】:

      猜你喜欢
      • 2012-06-14
      • 2020-01-05
      • 1970-01-01
      • 1970-01-01
      • 2016-01-08
      • 2023-03-11
      • 2018-01-27
      • 2014-04-25
      • 1970-01-01
      相关资源
      最近更新 更多