In Laravel possiamo suggerire agli utenti una password robusta ma facile da ricordare.
Si tratta di estrarre una parola casuale da un qualsiasi dizionario (non necessariamente legato ad una lingua reale) e combinarla con una cifra generata in modo random.
namespace App\Http\Controllers;
class AjaxController extends Controller
{
public function suggestPassword()
{
$path = public_path('src/words.txt');
$words = preg_split('/\n/', file_get_contents($path));
shuffle($words);
$pwd = $words[0] . mt_rand(9999, 99999);
$data = [ 'password' => $pwd ];
return response()->json($data);
}
}
Quindi definiamo la nostra route AJAX che fa uso del metodo definito nel controller.
Route::get('/ajax/suggest-password', 'AjaxController@suggestPassword');
A questo punto spetta al codice lato client effettuare una richiesta GET senza parametri al path specificato.