Подтвердить что ты не робот

Дд ($ request-> все()); возвращает пустой массив

Я пытаюсь загрузить фотографию из моего приложения Laravel 5, которое будет храниться в AWS. Я использую клиента Postman REST для тестирования. Когда я загружаю фотографию, запрос возвращает пустой массив. Кто-нибудь знает, почему это может быть? Здесь код для моего контроллера аватара:

class AvatarController extends Controller
{

  public function __construct(AWS $aws)
  {
      $this->aws = $aws;
  }

/**
 * Store a new avatar for a user.
 * POST northstar.com/users/{id}/avatar
 */
  public function store(User $user, Request $request)
  {
    dd($request->all());
    // dd($request->file('photo'));

    $file = $request->file('photo');
    // $file = Request::file('photo');
    // $file = Input::file('photo');

    $v = Validator::make(
      $request->all(),
      ['photo' => 'required|image|mimes:jpeg,jpg|max:8000']
    );

    if($v->fails())
      return Response::json(['error' => $v->errors()]);         

    $filename = $this->aws->storeImage('avatars', $file);

    // Save filename to User model
    $user->avatar = $filename;
    $user->save();

    // Respond to user with success
    return response()->json('Photo uploaded!', 200);
  }
}
4b9b3361

Ответ 1

Нашел ответ - похоже, была проблема с моими заголовками в Postman. У меня было приложение Accept application/json и Content-Type/json. Как только я удалил Content-Type, все исправлено. Благодарю!

Ответ 2

Немного опоздал на вечеринку, но мог бы быть полезен для других: моя проблема заключалась в том, что значением заголовка Content-Type было application/json а фактической полезной нагрузкой были данные формы. Изменение заголовка на application/x-www-form-urlencoded проблему.

Ответ 3

попробуйте использовать

dd($request->all());

Ответ 4

Попробуйте dd ($ request), dd ($ _ REQUEST), dd ($ request- > files).

Ответ 5

Вы можете проверить, что JSON действителен

$data = $request->all();
if(empty($data)) {
    $data = json_decode($request->getContent());
    $data = json_decode($data);

    if(is_null($data)) {
        return response()->json("Not valid json", 400);
    }
}