【问题标题】:laravel react api : request doesn't arrivedlaravel react api:请求未到达
【发布时间】:2018-12-09 20:14:05
【问题描述】:

我正在使用带有反应前端的 laravel api 后端.. 我正在尝试使用 axios 发布数据,但请求未到达.. 这是我在前端的代码

import React from 'react';
import axios from 'axios';

export default class PersonList extends React.Component {
 state = {
   product_name: '',

 }

 handleChange = event => {
   this.setState({ product_name: event.target.value });

 }

 handleSubmit = event => {
   event.preventDefault();

   const user = {
     product_name: this.state.product_name,



   };

   axios.post(`http://46.185.162.125/api/add_product`, { user })
     .then(res => {
       console.log(res);
       console.log(res.data);
     })
     .catch(error => {
   console.log(error.response)
});
 }

 render() {
   return (
     <div>
       <form onSubmit={this.handleSubmit}>
         <label>
           Name:
           <input type="text" name="product_name" onChange={this.handleChange} />
         </label>

         <button type="submit">Add</button>
       </form>
     </div>
   )
 }
}

这是后端控制器的代码

public function addProduct(Request $request)
{
        $new_product = new Product;
        $new_product->name = $request->product_name;
        $new_product->save();

        return 'success';
 }

但我收到 500 错误(product_name 列不能为空) 发生此错误是因为请求未到达

我在邮递员上尝试了这个 api,它成功了

我该如何解决?

【问题讨论】:

    标签: javascript reactjs api laravel-5 request


    【解决方案1】:

    { user }{ user: user } 的简写,因此只需发送 user 作为您的数据即可:

    axios.post(`http://46.185.162.125/api/add_product`, user)
      .then(res => {
        console.log(res);
      })
    

    【讨论】:

    • @AhmadAboZaid 太棒了!没问题。欢迎使用 stackoverflow!
    猜你喜欢
    • 2016-11-27
    • 1970-01-01
    • 1970-01-01
    • 2012-02-26
    • 1970-01-01
    • 1970-01-01
    • 2020-07-25
    • 1970-01-01
    • 2019-01-06
    相关资源
    最近更新 更多