Как получить JSON из POST? - PullRequest
0 голосов
/ 06 июня 2019

Я получаю JSON от клиента Vue.JS через REST Api, и я хотел бы получать данные с помощью Eloquent, но он не работает.Это не блейд и не стандартные данные для отправки форм, я получаю JSON Api из клиентского одностраничного приложения.

Это JSON, адресованный клиенту по маршруту / заказу, метод POST:

    {
        "name": "John",
        "phone": "+7 794 910 5708",
        "email": "example@gmail.com"
    }

Маршрут:

Route::post('/order','OrderController@order');

В контроллере Iпопробуйте сделать это:

    <?php

    namespace App\Http\Controllers;

    use Request;
    use App\Data;

    class OrderController extends Controller
    {
        public function order()
        {
            $input = Request::all();
            $data = new Data;
            $data->name = $input['name'];
            $data->phone = $input['phone'];
            $data->save();
            return response()->json(['result' => '200 OK'], 200);
        }
    }

Но ничего не происходит.Каков правильный синтаксис для получения данных от REST Api?

1 Ответ

1 голос
/ 06 июня 2019

Внесите некоторые изменения, как указано ниже:

В контроллере:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Data;

class OrderController extends Controller
{
    public function order(Request $request)
    {
        $post = $request->all();

        $data = Data::create($post);

        if($data){
            return response()->json(['success' => true, 'message' => 'Data has been inserted!']);
        } else {
            return response()->json(['success' => false, 'message' => 'Data not inserted, Something went wrong!']);        
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...