Flight PHP PUT метод не получает данные

Надеюсь, ты в порядке.

Я работаю над системой инвентаризации и использую FlightPHP для создания REST, потому что он очень легкий, и раньше я работал в других проектах.

Но сейчас у меня проблемы с этой платформой, и я попытался найти возможное решение этой проблемы, но не смог.

Прежде всего, я вставлю часть кода, который я использую

Flight::route('PUT /proveedores/', function() {

    $put_request = Flight::request();

    $Proveedor = new Proveedor(
        $put_request->data->RazonSocial,
        $put_request->data->RFC,
        $put_request->data->Domicilio,
        $put_request->data->Numero,
        $put_request->data->Colonia,
        $put_request->data->Municipio, 
        $put_request->data->Estado,
        $put_request->data->Pais,
        $put_request->data->CodigoPostal,
        $put_request->data->CondicionPago,
        $put_request->data->Plazo,
        $put_request->data->CorreoElectronico,
        $put_request->data->Contrarrecibos,
        $put_request->data->Observaciones
    );

    $Proveedor->setID($put_request->data->IDProveedor);

    $Updated = ProveedoresController::updateProveedor($Proveedor);

    if($Updated) {
        Flight::halt(200);
    } else {
        Flight::halt(500);
  }
});

Как видите, код легко понять. У меня есть метод PUT, работающий в / proofedores / path, и после этого я получаю запрос на чтение каждого поля HTTP-пакета (я не хочу указывать код ниже, потому что я тестировал его, и проблема не в в этом разделе).

Проблема в том, что когда я получаю данные из метода Flight::request, я получаю значения NULL. Я проверил это с POSTMAN и с моим заявлением, и у меня все еще есть эта проблема. Я не знаю, что происходит, потому что с другими методами, которые я использую (например, GET, POST и DELETE), работают должным образом.

П.Д. Извините, если мой английский плохой, надеюсь, вы поймете мою ситуацию и поможете мне с этой проблемой

1 ответ

Вы уверены, что отправляете запрос как тип контента application/json?

Если это так, попробуйте с:

$body = Flight::request()->getBody();

Источник: Flight Docs

Другие вопросы по тегам