Maison > cadre php > Swoole > le corps du texte

Comment utiliser le framework Hyperf pour le développement de séparations front-end et back-end

WBOY
Libérer: 2023-10-21 11:23:09
original
1419 Les gens l'ont consulté

Comment utiliser le framework Hyperf pour le développement de séparations front-end et back-end

Comment utiliser le framework Hyperf pour le développement de la séparation front-end et back-end

Avec le développement rapide d'Internet, le modèle de développement de la séparation front-end et back-end a attiré de plus en plus l'attention des développeurs . Dans ce modèle de développement, le front-end est responsable de l'affichage des pages et de l'interaction de l'utilisateur, tandis que le back-end est responsable du traitement des données et de la logique métier. Cet article explique comment utiliser le framework Hyperf pour le développement de séparations front-end et back-end, et fournit des exemples de code spécifiques.

  1. Préparation de l'environnement

Tout d'abord, nous devons installer PHP et Composer. Ensuite, utilisez Composer pour installer globalement le framework Hyperf avec la commande suivante :

composer global require hyperf/hyperf-skeleton
Copier après la connexion

Une fois l'installation terminée, vous pouvez utiliser la commande suivante pour créer un nouveau projet Hyperf :

composer create-project hyperf/hyperf-skeleton your-project-name
Copier après la connexion
  1. Créer un contrôleur

Dans Hyperf framework, le responsable du traitement est responsable du traitement des demandes et renvoie la réponse appropriée. Nous pouvons utiliser la commande suivante pour créer un nouveau contrôleur :

php bin/hyperf.php gen:controller DemoController
Copier après la connexion

Cela générera un fichier de contrôleur nommé DemoController dans le répertoire app/Controller. Dans ce fichier, nous pouvons définir différentes méthodes d'interface pour gérer différentes requêtes.

Ce qui suit est un exemple de code simple qui montre comment renvoyer une réponse au format JSON :

<?php

declare(strict_types=1);

namespace AppController;

use HyperfDiAnnotationInject;
use HyperfHttpServerAnnotationAutoController;
use HyperfHttpServerAnnotationMiddleware;
use HyperfHttpServerAnnotationMiddlewares;
use HyperfHttpServerContractRequestInterface;
use HyperfHttpServerContractResponseInterface;

/**
 * @AutoController(prefix="demo")
 * @Middlewares({
 *     @Middleware(AppMiddlewareAuthMiddleware::class),
 * })
 */
class DemoController
{
    /**
     * @Inject
     * @var RequestInterface
     */
    private $request;

    /**
     * @Inject
     * @var ResponseInterface
     */
    private $response;

    public function index()
    {
        $data = [
            'message' => 'Hello World',
        ];
        return $this->response->json($data);
    }
}
Copier après la connexion

Dans cet exemple de code, nous créons une méthode d'interface nommée index en appelant $response->json() La méthode renvoie une réponse au format JSON.

  1. Créer une page front-end

Dans le mode de développement où le front-end et le back-end sont séparés, nous devons fournir des documents d'interface pour le développement front-end afin qu'ils puissent appeler l'interface back-end. Hyperf fournit des composants Swagger qui peuvent générer automatiquement des documents d'interface. Nous pouvons utiliser la commande suivante pour installer le composant Swagger :

composer require hyperf/swagger
Copier après la connexion

Ensuite, créez un fichier de configuration swagger.php dans le répertoire config/autoload pour configurer les informations pertinentes du composant Swagger :

<?php

use HyperfSwggerAnnotation as Swgger;

/**
 * Class DemoController
 *
 * @SwggerApi(tags={"Demo"})
 */
class DemoController
{
    /**
     * @SwggerGet(path="demo/index")
     * @SwggerResponse(code=200, description="成功", @SwggerSchema(ref="#/definitions/Hello"))
     */
    public function index()
    {
        $data = [
            'message' => 'Hello World',
        ];
        return $this->response->json($data);
    }
}
Copier après la connexion

Dans cet exemple de code, nous utilisons Annotations Swagger à indexer La méthode fournit une description, y compris le chemin de l'interface, le code de réponse et d'autres informations.

  1. Démarrer le service Hyperf

Après avoir terminé la création du contrôleur et de la page front-end, nous devons démarrer le service Hyperf afin que le front-end puisse communiquer avec le back-end via l'interface.

Utilisez la commande suivante pour démarrer le service Hyperf :

php bin/hyperf.php start
Copier après la connexion
  1. Le front-end appelle l'interface back-end

Une fois le service Hyperf démarré avec succès, le développeur front-end peut appeler l'interface back-end en fonction au document d'interface. Ils peuvent utiliser n'importe quelle technologie front-end, telle que JavaScript, Vue.js, React, etc.

Ce qui suit est un exemple de code simple qui montre comment utiliser JavaScript pour appeler l'interface backend :

fetch('http://localhost:9501/demo/index')
    .then(response => response.json())
    .then(data => console.log(data));
Copier après la connexion

Dans cet exemple de code, nous utilisons la fonction fetch pour envoyer une requête GET et utilisons la méthode json() pour analyser le a renvoyé des données de réponse.

Résumé

Grâce aux étapes ci-dessus, nous pouvons utiliser le framework Hyperf pour développer la séparation front-end et back-end. Les développeurs peuvent choisir la technologie front-end qui leur convient en fonction de leurs propres besoins et préférences, et appeler l'interface back-end selon le document d'interface. Les fonctions puissantes et la riche documentation du framework Hyperf peuvent aider les développeurs à développer plus efficacement.

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!