SlimFramework3:如何使用Google Chrome高级REST客户端测试POST请求?

时间:2017-11-06 22:36:27

标签: php rest slim 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);
});

我无法弄清楚如何在高级REST客户端中设置POST数据!如果我将“任务”参数放在“标题”部分中,则Slim无法获取任何数据并为“任务”列插入空字符串: enter image description here

谢谢:)

1 个答案:

答案 0 :(得分:2)

您需要通过设置Content-Type标题告诉Slim您在身体中包含哪些类型的信息:

在标题部分添加标题名称/值对:

Header Name -> Content-Type
Header Value -> application/json

现在在body部分添加你想要解析的json信息:

{"task" : "A new task"}

Slim将读取标题并相应地将主体解析为数组类型。