Estoy usando Laravel 8 para generar una ruta firmada temporal y pasar algunos parámetros, pero me gustaría que mi URL me lleve a alguna URL de mi elección en lugar de a una página de mi proyecto.
Por contexto, mi proyecto Laravel 8 es una API, por lo que no hay vistas, luego mi API es consumida por un proyecto front-end escrito en Nuxt.
Intenté agregar mi URL al primer argumento de temporarySignedRoute pero dice que no se encuentra mi ruta.
$verifyURL = URL::temporarySignedRoute( 'https://example.com/account/verify', Carbon::now()->addHours(24), ['contact' => 5, 'team' => 'john'] );¿Qué me estoy perdiendo o qué solución hay aquí?
Entonces resulta que no necesito llevar al usuario a una URL externa, pero parece que URL::temporarySignedRoute está generando la URL incorrecta.
El inicio de mi URL generada es (por ejemplo) https://example.com/api/contact/verify y necesito que la URL sea https://api.example.com/api/contact/verify
Entonces, el mismo dominio, excepto un subdominio.
Parece que APP_URL no se lee porque la cambié y no tiene impacto, y además, esto se usa en otros lugares, así que intenté actualizar la URL con:
$verifyURL = URL::temporarySignedRoute( 'contact.verify', Carbon::now()->addHours(24), ['contact' => 5, 'team' => 'john] ); // fix for wrong URL $verifyURL = str_replace('example.com', 'api.example.com', $verifyURL); Sin embargo, esto parece tener una firma no válida cuando se hace clic en el enlace proporcionado por $verifyURL . ¿Cómo puedo obtener la parte api al principio?
URL::temporarySignedRoute() tiene un cuarto parámetro llamado $absolute que es un valor booleano. Entonces, si desea anteponer una URL personalizada en lugar de la URL predeterminada utilizada por Laravel, esta es la variable que debe cambiar.
El valor predeterminado para $absoluto es verdadero. Por lo tanto, para anteponer su propia URL personalizada, asegúrese de cambiarla a falsa primero como se muestra a continuación:
$verifyURL = URL::temporarySignedRoute( 'contact.verify', Carbon::now()->addHours(24), ['contact' => 5, 'team' => 'john], false // The $absolute value );Luego concatene su URL personalizada:
$your_custom_url . $verifyURL;