Maison  >  Article  >  interface Web  >  Ces points de connaissances fondamentaux doivent être maîtrisés dans la communication front-end et back-end !

Ces points de connaissances fondamentaux doivent être maîtrisés dans la communication front-end et back-end !

藏色散人
藏色散人avant
2022-08-07 13:47:531557parcourir

Qu'est-ce que le repos ?

restful est la spécification de conception d'interface la plus populaire à l'heure actuelle. C'est une spécification que le front-end et le back-end doivent connaître
Cette spécification définit le

protocole dans chaque processus de développement d'interface. le client interagit avec le backend via l'API. Dans le processus de communication de service final, le protocole HTTPS doit être utilisé

Nom de domaine

L'API doit être déployée sous un nom de domaine dédié et doit rester aussi simple que possible. Si vous êtes sûr que l'API est très simple et ne sera pas développée davantage, vous pouvez envisager de la placer sous le nom de domaine principal. Voici deux exemples courants de racine d'URL :

api.example.com/* Un nom de sous-domaine distinct. est utilisé pour accéder à l'interface

    example.com/api/* Un espace séparé sous le nom de domaine principal
  • Versioning

Toutes les API doivent rester rétrocompatibles Vous devez introduire les nouvelles versions des API tout en vous assurant que les anciennes versions. des API sont toujours disponibles. Par conséquent, une prise en charge de la version doit être fournie pour cela

Adresse (chemin) du routeur

URL spécifique à l'API

Le nom de l'URL doit être entièrement en minuscules

    Le nom de la ressource (ressource) dans l'URL doit être un nom, et doit C'est une forme plurielle
  • Vous devez d'abord utiliser des URL de type Restful
  • L'URL doit être facile à lire
  • L'URL ne doit pas exposer l'architecture du serveur
  • Quant à savoir si l'URL doit utiliser des tirets (-) ou des traits de soulignement (_), ce n'est pas un règlement obligatoire, mais un style doit être unifié selon la situation de l'équipe

https://api.example.com/zoos

    https://api.example.com/ animaux
  • https://api.example.com /zoos/{zoo}/animals
  • https://api.example.com/animal_types
  • https://api.example.com/employees
  • verbe (méthode de requête)

pour les ressources Types d'opérations spécifiques, représentés par des verbes HTTP. Il existe cinq verbes HTTP couramment utilisés (les commandes SQL correspondantes sont entre parenthèses).

GET (SELECT) : Obtenez une ou plusieurs ressources du serveur.

    POST (CREATE) : Créez une nouvelle ressource sur le serveur.
  • PUT (UPDATE) : Mettre à jour les ressources sur le serveur (le client fournit l'intégralité des ressources modifiées).
  • PATCH (UPDATE) : Mise à jour dans la partie ressource de mise à jour du serveur (le client fournit les attributs modifiés).
  • DELETE (DELETE) : Supprimer une ressource du serveur.
  • Paramètres d'URL

Tous les paramètres d'URL doivent être en minuscules et doivent utiliser le formulaire de paramètre de type trait de soulignementLes paramètres de pagination doivent être fixés sur page, page_size


Response(Response)

doit choisir le statut HTTP approprié coder. Doit renvoyer les données au format JSON.

Toutes les erreurs doivent être dans le même format d'erreur.



Codes d'état courants

1xx signifie que la demande a été acceptée et doit continuer le traitement. Elle n'apparaît généralement pas dans l'API

    2xx La demande a réussi et l'en-tête de réponse ou le corps de données est attendu. par la requête sera renvoyé avec cette réponse
  • 200 Le serveur renvoie avec succès les données demandées par l'utilisateur
    • 201 L'utilisateur crée ou modifie les données avec succès
    • 202 Indique qu'une requête a été mise en file d'attente en arrière-plan (il n'y a pas de retour valeur en cas de succès, elle est asynchrone)
    • 204 La suppression est réussie
    • Redirection 3xx
  • 4xx Erreurs causées par des raisons du client
  • 404 L'interface demandée n'existe pas, le type d'erreur (l'adresse de la demande est erronée)
    • 401 L'utilisateur n'est pas connecté
    • 403 L'utilisateur est connecté, mais n'a pas l'autorisation d'accéder
    • 422 Les paramètres client sont erronés, erreur de vérification
    • 429 Limite de requête dépassée
    • 5xx Erreur causée par le serveur- raisons secondaires
  • 500 Le serveur a rencontré une situation inattendue, qui l'a empêché de terminer le traitement de la demande, et le code du serveur a signalé une erreur
    • 503 Maintenance du serveur Parmi
    • 504 appel de délai d'attente
  • mauvais format

'message' => ':message',          // 错误的具体描述
'errors' => ':errors',            // 参数的具体错误描述,422 等状态提供
'code' => ':code',                // 业务自定义的异常码
'status_code' => ':status_code',  // http状态码
'debug' => ':debug',              // debug 信息,非生产环境提供
Qu'est-ce qu'un message ?

Les messages HTTP sont utilisés pour échanger des informations lors de requêtes et de réponses HTTP. Les messages arrivent sur le serveur depuis le client. Les messages sont divisés en deux catégories : les messages de demande et les messages de réponse. Les structures de base des messages de demande et de réponse sont les mêmes et sont composées de trois parties :

starting Ligne de départ : Décrivez le message

En-tête : certains attributs

Corps : données [Facultatif]

  • axios
  • Compatible avec les navigateurs et les serveurs de nœuds
  • Créer des requêtes XMLHttp à partir du navigateur
Créer à partir d'une requête http node.js

Support Promise API Support interception des demandes et des réponses

Convertir les données de demande et les données de réponse

Annuler la demande
Convertir automatiquement les données JSON
Le client prend en charge la défense contre XSRF


Allez, étrangers (j'espère que vous n'êtes pas un étranger lorsque vous allez et venez, je ! j'espère utile pour vous)

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer