Maison  >  Article  >  développement back-end  >  Exemple de partage Laravel reçoit des données du front-end ajax

Exemple de partage Laravel reçoit des données du front-end ajax

小云云
小云云original
2018-02-06 09:42:472735parcourir

Je prends actuellement des notes sur un projet. La pile technologique est la suivante : vue.js + laravel + mongodb Tout d'abord, je dois déplorer la magie de vue. Après le projet d'hier soir, je vais réaliser une. examen des technologies utilisées dans l'ensemble du projet et des pièges que j'ai rencontrés. Pour résumer, nous allons enregistrer aujourd'hui un exemple du front-end transmettant des données au back-end et de laravel les recevant.

Je n'ai pas utilisé vue-resource pour le plug-in ajax front-end Pour être honnête, j'ai rencontré des pièges lors de son utilisation, j'ai donc utilisé axios.js, qui est facile à utiliser et plus petit que vue. -ressource.

Regardons le code front-end (en omettant la partie logique de vue) :


axios.post('index.php/login',{
    email:this.email,
    pass:this.pass
  }).then(function(res){
    console.log(res)
  }).then(function(){
    console.log(321)
  })

this.email et this.pass sont le formulaire données renseignées par l'utilisateur. Cliquez pour vous connecter pour exécuter cette méthode (après avoir vérifié que le format des données est OK).

Voyons comment Laravel reçoit ces deux valeurs :

Nous créons un fichier modèle de GUser.php dans le dossier app, avec le contenu suivant :


<?php
namespace App;
use Mongodb;
use DB;
 
class GUser extends Mongodb {
  public static function login($email) {
 
    $mongo = DB::connection(&#39;mongodb&#39;);
    $res = $mongo->collection(&#39;user&#39;)->where(&#39;email&#39;,$email)->first();
    return $res;
 
  }
}

Créez un fichier GUserController.php sous app/Http/Controllers avec le contenu suivant :


<?php
namespace App\Http\Controllers;
 
use App\Http\Controllers\Controller;
use App\GUser;
use Illuminate\Http\Request;
 
class GUserController extends Controller{
 
  protected function login(Request $request) {
    $email = $request->input(&#39;email&#39;);
    $pass = $request->input(&#39;pass&#39;);
    $res = GUser::login($email);
    return $res;
  }
}

Bien sûr, ça ne sert à rien ici la valeur de pass, j'ai omis ici la logique de vérification de connexion.

Configurez-le ensuite dans le fichier de routage web.php :


Route::any(‘/login&#39;,&#39;GUserController@login&#39;);

Recommandations associées :

PHP Il y a une petite confusion sur le fait que le type de données envoyé à AJAX est JSON

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn