SlimFramework3: как проверить POST-запрос с помощью Google Chrome Advanced REST Client?
Это моя функция Slim:
// Add a new task
$app->post('/task/', function (Request $request, Response $response) {
$data = $request->getParsedBody();
$task = $data['task'];
$state = 1;
$now = date("Y-m-d");
$this->database->insert("task", [
"task" => "$task",
"status" => "1",
"created_at" => "$now"
]);
$return = ['id' => $this->database->id()];
return $response->withJson($return);
});
Я не могу понять, как установить данные POST в Advanced REST Client! Если я добавлю параметр "задача" в раздел "Заголовки", Slim не сможет получить какие-либо данные и вставит пустую строку в столбец "задача":
Спасибо:)
1 ответ
Решение
Вы должны указать Slim, какую информацию вы включаете в тело, установив заголовок Content-Type:
В разделе заголовка добавьте пару заголовок / значение:
Header Name -> Content-Type
Header Value -> application/json
Теперь в разделе body добавьте информацию json, которую вы хотите проанализировать:
{"task" : "A new task"}
Slim прочитает заголовок и проанализирует тело соответственно как тип массива.