Как исправить Uncaught (в обещании) SyntaxError: Неожиданный конец ввода JSON? - PullRequest
0 голосов
/ 30 апреля 2019

Итак, я хочу загрузить файл в Cloudinary с помощью React, но я получаю Upload.js:22 Uncaught (in promise) SyntaxError: Unexpected end of JSON input в моей строке let json = await res.json();.Как я могу это исправить?

class Upload extends React.Component {
  processFile = async e => {
    var file = e.target.files[0];
    var formdata = new FormData();

    formdata.append("file", file);
    formdata.append("cloud_name", "dvrmt2oir");
    formdata.append("upload_preset", "wco0c7sr");

    let res = await fetch(
      "https://api.cloudinary.com/v1_1/dvrmt2oir/image/upload",
      {
        method: "post",
        mode: "cors",
        body: formdata
      }
    );

    let json = await res.json();
    console.log(JSON.stringify(json.secure_url));
  };

  render() {
    return (
      <div>
        <h3>Upload</h3>
        <input type="file" onChange={this.processFile} />
      </div>
    );
  }
}

1 Ответ

0 голосов
/ 30 апреля 2019

Я попытался использовать следующий код:


import React from "react";
import ReactDOM from "react-dom";

import "./styles.css";

class Upload extends React.Component {
  processFile = async e => {
    var file = e.target.files[0];
    var formdata = new FormData();

    formdata.append("file", file);
    formdata.append("cloud_name", "dvrmt2oir");
    formdata.append("upload_preset", "wco0c7sr");

    let res = await fetch(
      "https://api.cloudinary.com/v1_1/dvrmt2oir/image/upload",
      {
        method: "post",
        mode: "cors",
        body: formdata
      }
    );

    let json = await res.json();
    console.log(JSON.stringify(json.secure_url));
  };

  render() {
    return (
      <div>
        <h3>Upload</h3>
        <input type="file" onChange={this.processFile} />
      </div>
    );
  }
}
ReactDOM.render(<Upload />, document.getElementById("container"));

И это сработало.Можете ли вы предоставить изображение, которое вы пытались загрузить?

...