php - Laravel 获取发送到请求的数据

标签 php laravel laravel-5

我正在使用 Laravel 5.4 实现 API。我想以 JSON 形式发送标题、描述、时间和 user_id,然后获取包含输入数据的 JSON 响应。

这是我的代码:

    $title = $request->input('title');
    $description = $request->input('description');
    $time = $request->input('time');
    $user_id = $request->input('user_id');

    $meeting = [
        'title' => $title,
        'description' => $description,
        'time' => $time,
        'user_id' => $user_id,
        'view_meeting' => [
            'href' => 'api/v1/meeting/1',
            'method' => 'GET1'
        ]
    ];

    $response = [
      'msg' => 'Meeting created',
      'meeting' => $meeting
    ];

    return response()->json($response, 201);

运行服务器后,我使用 POSTMAN (body->raw:) 发出发布请求

{
"time": "201601301330CET",
"title": "Test meeting 2",
"description": "Test",
"user_id": 2
}

但它返回这个:

{
"msg": "Meeting created",
"meeting": {
  "title": null,
  "description": null,
  "time": null,
  "user_id": null,
  "view_meeting": {
    "href": "api/v1/meeting/1",
    "method": "GET1"
  }
}
}

为什么标题、描述、时间和 user_id 字段为空?

最佳答案

您需要将 Postman 的 content-type 下拉列表设置为 JSON (application/json)。更改该设置将响应中的 null 值更改为:

{
  "msg": "Meeting created",
  "meeting": {
    "title": "Test meeting 2",
    "description": "Test",
    "time": "201601301330CET",
    "user_id": 2,
    "view_meeting": {
      "href": "api/v1/meeting/1",
      "method": "GET1"
    }
  }
}

关于php - Laravel 获取发送到请求的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43353153/

相关文章:

Laravel 私有(private) channel 授权不起作用

mysql - laravel 3 utf8mb4 支持

php - 如何编写迁移以撤消 Laravel 中的唯一约束?

php - 在 PHP 中从具有大数据的数据库表中获取数据的等待时间更长

php - 如何在 symfony 中为枚举生成实体和模式

php - Laravel 验证检查数组大小的最小值和最大值

拉拉维尔。如何获得外键是数组的关系

laravel - 我们可以为数据创建迁移,而不仅仅是表结构吗

php - 无法将正确的值插入表中

php - 无法解析变量 Volley