Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

139
Vistas
Laravel - método de solicitud de verificación

Soy un líder de iOS en una aplicación y trato de corregir algunos errores de API mientras nuestro desarrollador "no está disponible". Soy casi completamente nuevo en Laravel y trato de verificar cuál es el método de solicitud. He seguido algunas instrucciones de otra pregunta, pero no he podido hacer que funcione:

 public function defaults(Request $request, User $user){ $follow_ids = explode(',', env('FOLLOW_DEFAULTS')); if ($request->isMethod('post')) { return ['user' => $user]; } $user->follows()->syncWithoutDetaching($follow_ids); return ['user.follows' => $user->follows->toArray()]; }

¿Sabes dónde podría estar equivocándome aquí? Gracias por adelantado.

Cuando se devuelve la solicitud, siempre parece saltear y devolver ['user.follows' => $user->follows->toArray()]

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

$request debe ser una instancia de Illuminate\Http\Request . Esta clase extiende la solicitud de Symfony ( Symfony\Component\HttpFoundation\Request ), que en realidad es donde se define el método isMethod() .

Básicamente, dada la definición de la función tal como se publicó, dice "si se trata de una solicitud POST , simplemente devuelva los datos del usuario. Si no es una solicitud POST (por ejemplo, GET ), actualice y devuelva los datos de la relación".

Entonces, si envía una solicitud POST , obtendrá la respuesta ['user' => $user] . Si envía cualquier otro método de solicitud (por ejemplo, GET ), modificará la follows relación y obtendrá la ['user.follows' => $user->follows->toArray()] .

Para mí, esto parece al revés. Creo que le gustaría que la solicitud POST actualice los datos y cualquier otra solicitud (por ejemplo, GET ) solo devuelva datos.

Si esto es correcto, debe negar su verificación de isMethod :

 if (! $request->isMethod('post')) { return ['user' => $user]; }

De manera más apropiada, debe definir acciones de controlador separadas para manejar las POST vs GET , pero eso está fuera del alcance de esta pregunta, y probablemente más de lo que desea ingresar como mantenedor temporal.

about 4 years ago · Santiago Trujillo Denunciar

0

Parece que la solicitud no es un POST, por lo que la verificación if nunca es verdadera. Podría hacer eco del nombre del método de esta manera:

 $method = $request->method(); echo $method; // or var_dump($method);
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda