Heim Backend-Entwicklung PHP-Tutorial Einführung in die Versionskontrolle der Yii2.0 RESTful API (Codebeispiel)

Einführung in die Versionskontrolle der Yii2.0 RESTful API (Codebeispiel)

Jan 10, 2019 am 11:27 AM
api php restful yii2 版本控制

Dieser Artikel bietet Ihnen eine Einführung in die Versionskontrolle der Yii2.0 RESTful API (Codebeispiele). Ich hoffe, dass er für Sie hilfreich ist.

Ich habe bereits zwei Artikel darüber geschrieben, wie man die Yii2.0 RESTful API erstellt, sowie über Authentifizierung und andere Verarbeitung, aber sie betrafen nicht die Versionsverwaltung. Heute werde ich darüber sprechen, wie man die Versionsverwaltung implementiert.

Beginnen Sie einfach von vorne und erstellen Sie es Schritt für Schritt, aber einige Konzepte und Verwendung werden in diesem Artikel nicht einzeln erklärt. Zur Konfiguration können Sie sich auf das erste Yii2.0 RESTful API-Grundkonfigurations-Tutorial beziehen

Yii2.0 installieren

Über Composer installieren

Dies ist die bevorzugte Methode zur Installation von Yii2.0. Wenn Sie Composer noch nicht installiert haben, können Sie den Anweisungen hier folgen, um es zu installieren.

Führen Sie nach der Installation von Composer den folgenden Befehl aus, um das Composer Asset-Plug-in zu installieren:

composer global require "fxp/composer-asset-plugin:^1.2.0"
Nach dem Login kopieren

Um die erweiterte Anwendungsvorlage zu installieren, führen Sie den folgenden Befehl aus:

composer create-project yiisoft/yii2-app-advanced yii-api 2.0.14
Nach dem Login kopieren

Kopieren Sie das Backend-Verzeichnis mit dem Namen api

Öffnen Sie apiconfigmain.php und ändern Sie die ID, ControllerNamespace:

return [
    'id' => 'app-api',
    'basePath' => dirname(__DIR__),
    'controllerNamespace' => 'api\controllers',
]
Nach dem Login kopieren

Initialisieren Sie die erweiterte Vorlage

vor der Initialisierung Lesen Sie zuerst diesen Artikel

cd advanced
php init
Nach dem Login kopieren

Öffnen Sie commonconfigmain.php und aktivieren Sie die URL-Routing-Verschönerungsregeln

'urlManager' => [
    'enablePrettyUrl' => true,
    'showScriptName' => false,
    'rules' => [
    ],
],
Nach dem Login kopieren

Öffnen Sie commonconfigbootstrap.php und fügen Sie die folgenden Aliase hinzu

Yii::setAlias('@api', dirname(dirname(__DIR__)) . '/api');
Nach dem Login kopieren

OK, die Die obige Arbeit ist fertig. Kommen wir zur Sache. Weitere Informationen zur Version finden Sie in der maßgeblichen Anleitung. Ich werde hier nicht zu viel erklären. ..)

Mein Verständnis:

Sie können die Versionen von Yii2 als unterschiedliche Module verstehen. Jede Version ist ein neues Modul, wie z. B. das gemeinsame v1, v2 usw.

Erstellen des Moduls

Was die Generierung des Moduls betrifft, können wir GII verwenden, um es zu generieren.

GII konfigurieren

Öffnen Sie die Datei api/config/main-local.php und ändern Sie sie wie folgt:

if (!YII_ENV_TEST) {
    // configuration adjustments for 'dev' environment
    $config['bootstrap'][] = 'debug';
    $config['modules']['debug'] = [
        'class' => 'yii\debug\Module',
    ];

    $config['bootstrap'][] = 'gii';
    $config['modules']['gii'] = [
        'class' => 'yii\gii\Module',
        'allowedIPs' => ['127.0.0.1', '*']
    ];
}
Nach dem Login kopieren
Da ich Homestead verwende, ist der Zugriff auf GII standardmäßig nicht erlaubt, also habe ich es getan um 'allowedIPs' => ; ['127.0.0.1', '*'] hinzuzufügen, sonst wird Forbidden (#403) angezeigt. Sie können es nach Ihren eigenen Bedürfnissen konfigurieren oder nicht konfigurieren Module generieren

Durchsuchen Geben Sie http://Ihren Host/gii in den Server ein, Sie können den Modulgenerator sehen, klicken Sie auf Start

Modules-Klasse, geben Sie ein: apimodulesv1Module

Module ID, geben Sie v1 ein (normalerweise wird es automatisch eingegeben)

Klicken Sie auf Vorschau

Einführung in die Versionskontrolle der Yii2.0 RESTful API (Codebeispiel)Klicken Sie abschließend auf „Generieren“, um zu generieren

Einführung in die Versionskontrolle der Yii2.0 RESTful API (Codebeispiel)Konfigurationsmodul

Öffnen Sie die Datei api/config/main.php, ändern Sie Module

'modules' => [
    'v1'=>[
        'class'=>'api\modules\v1\Module',
    ],
],
Nach dem Login kopieren

und ändern Sie dann urlManager

'urlManager' => [
    'enablePrettyUrl' => true,
    'enableStrictParsing' => true,
    'showScriptName' => false,
    'rules' => [
        ['class' => 'yii\rest\UrlRule',
            'controller' => 'v1/default',
            'extraPatterns'=>[
                'GET index'=>'index',
            ],
        ],
    ],
],
Nach dem Login kopieren
Basierend auf dem oben Gesagten wurde die Yii2.0 RESTFul API-Versionsverwaltung implementiert, und wir können über die folgende Adresse darauf zugreifen:

http://localhost/v1/defaults
Nach dem Login kopieren
Um es noch ein wenig zu sagen, die Adresse über mir wurde dem API/Web-Verzeichnis zugeordnet, bitte konfigurieren Sie es entsprechend Ihrer tatsächlichen Situation.

Öffnen Sie das gerade generierte Moduldateiverzeichnis. Sie können sehen, dass sich darin ein v1-Verzeichnis befindet Es gibt auch ein Controller- und ein Ansichtenverzeichnis.
Die Standardeinstellungen, die wir gerade besucht haben, sind tatsächlich diese beiden Dateien. Der Controller rendert die Ansicht genau wie ein herkömmliches Webprojekt.

Okay, Sie wissen vielleicht, dass unser zukünftiger Controller-Code ist wird in module/v1/controllers abgelegt

Gerade war es nur die Standardeinstellung. Der von GII für uns generierte Code liegt daran, dass wir eine API sind, sodass das Ansichtsverzeichnis von uns im Allgemeinen nicht verwendet wird.

Erstellen Sie einen neuen Rest-Controller

Erstellen Sie einen neuen UserController unter modulev1controllers

<?php namespace api\modules\v1\controllers;

use yii\rest\Controller;

/**
 * User controller for the `v1` module
 */
class UserController extends Controller
{
    /**
     * @return string
     */
    public function actionIndex()
    {
        return &#39;this is v1/user&#39;;
    }
}
Nach dem Login kopieren

Ändern Sie den URLManager in api/config/main.php

'urlManager' => [
    'enablePrettyUrl' => true,
    'enableStrictParsing' => true,
    'showScriptName' => false,
    'rules' => [
        ['class' => 'yii\rest\UrlRule',
            'controller' => 'v1/default',
            'extraPatterns'=>[
                'GET index'=>'index',
            ],
        ],
        ['class' => 'yii\rest\UrlRule',
            'controller' => 'v1/user',
            'extraPatterns'=>[
                'GET index'=>'index',
            ],
        ],
    ],
],
Nach dem Login kopieren
Versuchen Sie, darauf zuzugreifen

http://localhost/v1/users/index
Nach dem Login kopieren
ok, das Obige ist die Implementierung der Yii2.0-Versionsverwaltung

Formatierte Antwort

Ändern Sie api/config/main.php in den Komponenten Array Antwort hinzufügen

'response' => [
    'class' => 'yii\web\Response',
    'on beforeSend' => function ($event) {
        $response = $event->sender;
        $response->data = [
            'success' => $response->isSuccessful,
            'code' => $response->getStatusCode(),
            'message' => $response->statusText,
            'data' => $response->data,
        ];
        $response->statusCode = 200;
    },
],
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonEinführung in die Versionskontrolle der Yii2.0 RESTful API (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP arbeitet mit Datenbank CakePHP arbeitet mit Datenbank Sep 10, 2024 pm 05:25 PM

Das Arbeiten mit der Datenbank in CakePHP ist sehr einfach. In diesem Kapitel werden wir die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) verstehen.

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

In diesem Kapitel lernen wir die folgenden Themen im Zusammenhang mit dem Routing kennen.

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

CakePHP erstellt Validatoren CakePHP erstellt Validatoren Sep 10, 2024 pm 05:26 PM

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

CakePHP-Protokollierung CakePHP-Protokollierung Sep 10, 2024 pm 05:26 PM

Die Anmeldung bei CakePHP ist eine sehr einfache Aufgabe. Sie müssen nur eine Funktion verwenden. Sie können Fehler, Ausnahmen, Benutzeraktivitäten und von Benutzern durchgeführte Aktionen für jeden Hintergrundprozess wie Cronjob protokollieren. Das Protokollieren von Daten in CakePHP ist einfach. Die Funktion log() wird bereitgestellt

See all articles