Как передать данные, включенные в файл в виде form-data, в почтальоне по реакции? - PullRequest
0 голосов
/ 11 марта 2020

Во-первых, я был новичком, чтобы отреагировать, мне нужно передать данные из внешнего интерфейса в бэкэнд через API. Данные в виде данных формы из POSTMAN. Ниже на рисунке показана работа API в POSTMAN

enter image description here

Я использую данные формы здесь для своих данных API.

Так что здесь проблема. Так как это первый раз, я занимаюсь этим вопросом передачи файла в данные формы. Ниже код, что я делаю:

 constructor (props){
        super(props);
        const supplier_id = parseInt(localStorage.getItem('id'));
        this.state ={
            supplier_id: supplier_id,
            item_name:'',
            item_shortDes: '',
            item_longDes: '',
            price: '',
            terms_agreement: '',
            Location: '',
            selectedFile: null,    // The item file which I need to pass to api.
          redirect: false,
        }
        this.onChange = this.onChange.bind(this);
        this.createItem = this.createItem.bind(this);
      }

      createItem(){
        console.log(this.state)
        fetch(`http://localhost:9000/api/item/submit`, {  // callling the API here
            method: 'post',
            body: JSON.stringify(this.state)   
        }).then ((result) => {  
                let responseJSON = result;
                console.log(responseJSON);
                });
      }

Я получаю ошибку здесь:

enter image description here

Так что я считаю, что это потому, что Я не проходил через тип form-data. я прав? Как бы я справился с этим?

1 Ответ

0 голосов
/ 11 марта 2020

Вначале, когда вам нужно отправить данные формы, вы должны вызвать класс данных формы, например, сообщение.

formData = new FormData()

, а затем начать добавлять данные формы

formData.append("keyName", $ {keyName} )

...