English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Postscript of JSON Must-Know and Must-Know

Je recommande vivement aux utilisateurs d'acheter des livres papier, bien sûr, si les conditions le permettent, vous pouvez télécharger temporairement la version électronique : https://fr.oldtoolbag.com/books/504703.html

Terminologie
Portabilité
Compatibilité de la transmission d'informations entre plateformes et systèmes.
 
JSON
JavaScriptObjectNotation - Notation d'objet.
 
Format d'échange de données
Texte utilisé pour échanger des données entre différentes plateformes ou systèmes.
 
Littéral
Une valeur dont le sens littéral correspond exactement à ce qu'elle signifie.
 
Variable
Représenté par un identificateur de forme X, une catégorie de valeurs modifiables.
 
La plus grande portabilité
Fournit une portabilité au-delà du format de données lui-même en garantissant l'interopérabilité des données elles-mêmes pour les plateformes et les systèmes.
 
Nom-Paire de valeurs
Des attributs et des caractéristiques possédant un nom et une valeur correspondante (également appelés paires de nom-valeur).
 
Validation syntaxique
Validation du format JSON.
 
Validation de la cohérence
Se concentre sur la validation des structures de données uniques.
 
Type de chaîne dans JSON
Une valeur de chaîne, telle que « tu es une bonne personne », entourée de guillemets doubles.
 
Concept

JSON est un format de données d'échange.
 
JSON est indépendant des langages de programmation.
 
JSON est basé sur la notation littérale des objets JavaScript (l'accent est mis sur la notation).
 
La manière dont JSON exprime les données est très amicale pour les concepts de programmation génériques.
 
JSON est basé sur la syntaxe des objets littéraux JavaScript pour représenter des attributs, mais ne contient pas la partie des fonctions des objets littéraux JavaScript.
 
Nom dans JSON-Dans les paires de valeurs, le nom est toujours entouré de guillemets doubles.
 
Nom dans JSON-Dans les paires de valeurs, la valeur peut être une chaîne de caractères, un nombre, une valeur booléenne, null, un objet ou un tableau.
 
Nom dans JSON-Les listes de paires de valeurs sont toujours entourées de crochets.
 
Les paires de noms et de valeurs multiples dans JSON sont séparées par des virgules.
 
Les fichiers JSON utilisent l'extension .json.
 
Le type de média de JSON est application/json.
 
Les valeurs du type booléen dans JSON ne sont que true et false, toutes les lettres doivent être en minuscules.
 
Tous les caractères des valeurs null dans JSON doivent être en minuscules, représentant une valeur vide.
 
Type de nombre dans JSON, une valeur numérique comme66Peuvent être des entiers positifs, des entiers négatifs, des décimaux, des exponentiels.
 
Une distinction clé entre les objets et les tableaux est que les objets sont des noms-Une liste ou un ensemble de paires de valeurs, un tableau est une liste et un ensemble de valeurs.
 
Une autre distinction clé entre les objets et les tableaux est que toutes les valeurs dans un tableau doivent avoir le même type de données.
 
Terminologie
Tableau dans JSON
Un tableau est un ensemble ou une liste de valeurs, chaque valeur pouvant être une chaîne de caractères, un nombre, une valeur booléenne, un objet ou un tableau. Les tableaux doivent être entourés de [], et les valeurs doivent être séparées par des virgules.
 
Type d'objet dans JSON
Le type d'objet est une liste de noms séparés par des virgules-Un ensemble de paires de valeurs, entourées de {}.
 
JSON Schema
Un contrat virtuel dans l'échange de données.
 
Serveur (dans le développement web)

Lorsque une ressource de type page web est demandée, une série d'opérations est exécutée sur le serveur. Le serveur fournit aux navigateurs internet les réponses qu'ils traitent et chargent.
 
Client (dans le développement web)
Une série d'opérations exécutées lorsque l'interface demandée par le navigateur est chargée, généralement des HTML, CSS et JavaScript.
 
Concept
Le validateur JSON est responsable de la vérification des erreurs de syntaxe, et JSON Schema est responsable de la validation de cohérence.
 
JSONSchema est la première ligne de défense pour la réception des données, et aussi un bon outil pour économiser du temps pour l'expéditeur et garantir laexactitude des données.
 
JSONSchema peut résoudre les problèmes de validation de cohérence suivants
  1. Le type de données de la valeur est-il correct ? Vous pouvez spécifier un type de valeur spécifique, comme numérique, chaîne, etc.
  2. Est-ce que les données nécessaires sont incluses ? Vous pouvez spécifier quelles données sont nécessaires et lesquelles ne le sont pas.
  3. Est-ce que la forme de la valeur est ce que j'ai besoin ? Vous pouvez spécifier une gamme, la valeur minimale et maximale.
 
JSON lui-même ne constitue pas une menace, c'est juste du texte.
 
En déterminant les problèmes de sécurité JSON, il convient de se souvenir de ce qui suit3Cette chose.

  1. Ne pas utiliser de tableau en haut, un tableau en haut est un script JavaScript légitime, qui peut être lié avec la balise <script> et utilisé.
  2. Pour les ressources non souhaitées pour le public, autorisez uniquement l'utilisation de la méthode HTTPPost pour la demande,而非Get方法。La méthode Get peut être utilisée pour une requête url, même placée dans une balise script.
  3. Utilisez JSON.parser() à la place de eval(), car eval() compile et exécute la chaîne passée, ce qui rend votre code vulnérable. Utilisez uniquement JSON.parser() pour解析 json données.
 
Les failles de sécurité sont souvent causées par le fait que les développeurs n'ont pas considéré la question de la manière dont les pirates pourraient en tirer parti.
 
La relation entre XMLHTTPRequest et WebAPI en JavaScript est une relation client-serveur.
 
XMLHTTPRequest n'est pas limité à XML, il peut également être utilisé pour demander des ressources JSON.
 
Terminologie
Fausse demande de site entre parties (CSRF)
Une attaque qui utilise la confiance du site envers le navigateur de l'utilisateur.
 
Tableau JSON en haut
Présent dans le nom JSON-Un tableau JSON situé en haut du document, en dehors des paires de valeurs.
 
Attaque par injection
Une attaque qui dépend de l'injection de données dans une application web pour faciliter l'exécution ou la compilation de données malveillantes.
 
Attaque par script en croisant les sites (XSS) utilisant JSON
Une forme d'attaque par injection consistant à substituer le code tiers utilisé sur un site par un script malveillant.
 
webApi
Une série d'instructions et de normes pour interagir avec les services via HTTP.
 
XMLHTTPRequest
Un objet JavaScript, qui peut obtenir des données à partir d'une URL sans actualiser la page, souvent utilisé dans le développement AJAX.
 
HyperText Transfer Protocol (HTTP)
Le protocole de base utilisé par le World Wide Web pour échanger des données
 
Sérialisation
L'opération de conversion d'un objet en texte
 
Désérialisation
L'opération de conversion de texte en objet.
 
Concept
Le site web est au service des utilisateurs, et le webAPI est au service du code, ils utilisent tous le protocole HTTP.
 
La stratégie de source rend possible la client-side JavaScript et les ressources JSON-Des difficultés sont apparues dans les échanges entre serveurs.
 
Pour que les XMLHTTPRequest client transversaux réussissent les requêtes de ressources JSON, ils nécessitent le soutien du serveur.
 
jQuery est un outil d'abstraction qui fournit des fonctionnalités de requête et de parsing JSON pour raccourcir le temps de développement, tout en résolvant également les problèmes de compatibilité entre navigateurs.
 
Concept de MVC AngularJS
  JSON est le modèle||le modèle de données
  HTML est la vue et fournit une syntaxe pour lier le modèle
  Le contrôleur est un fichier JavaScript définissant et opérant l'interaction entre le modèle et la vue en utilisant la syntaxe AngularJS.
 
AngularJS permet aux objets JavaScript et JSON de briller dans l'architecture MVC.
 
Dans les bases de données relationnelles, il existe souvent des colonnes de table et leurs relations, où sont utilisés les clés primaires et les clés étrangères.
 
Il existe de nombreuses bases de données NoSQL, qui ont des méthodes de stockage et d'utilisation des données différentes des modèles relationnels traditionnels.
 
Concepts importants de la base de données CouchDB
  1.Il s'agit d'une base de données NoSQL orientée document
  2.Il stocke et gère des documents JSON
  3.Il maintient bien la structure des données tout en stockant et en récupérant des données
  4.Il utilise des API basées sur HTTP pour obtenir des données en tant que ressources de documents JSON
  5.Il utilise JavaScript en tant que langage de requête et obtient des données par-dessus les API via les méthodes map et reduce de la vue.
 
Sur le serveur, il est possible de désérialiser JSON en objet pour l'utiliser dans la logique de programmation, ou de sérialiser un objet en format JSON.
 
JSON est bien supporté à la fois par le serveur et le client, ce qui lui permet de se démarquer parmi de nombreux formats de données d'échange dans le domaine Web.
 
Terminologie
Stratégie de source
Pour des raisons de sécurité, les navigateurs ne demanderont que des scripts du même domaine.
 
Partage de ressources entre origines CORS
En définissant les en-têtes de réponse, il est possible de réussir les requêtes croisées.
 
JSON-p
En utilisant la balise script, contourner les restrictions de la stratégie de source, demander JSON à des serveurs de domaines différents.
 
Abstraction
Une technique pour traiter des systèmes complexes, l'idée principale étant de transformer un grand problème en plusieurs petits problèmes.
 
Cadre
Un outil d'abstraction qui économise du temps, nous permettant de nous concentrer davantage sur la construction de fonctionnalités.
 
Jquery.parserJSON()
Une fonction jQuery qui appelle non seulement la fonction JSON.parser(), mais est également compatible avec les navigateurs anciens qui ne prennent pas en charge la fonction JSON.parser(), et évalue la chaîne de caractères par le biais de la validation des caractères, évitant ainsi des problèmes de sécurité potentiels.
 
jquery.getJSON()
Forme abrégée de la fonction jquery.ajax(), qui contient la fonction de parsing JSON en objet JavaScript.
 
Application web mono-page
Différent du mode de navigation multipages traditionnel, axé sur la fourniture d'une expérience d'application plus fluide.
 
Modèle-Vue-Contrôleur (MVC)
Un modèle d'architecture d'application qui divise l'application en3Partie : modèle (données), vue (affichage) et contrôleur (mise à jour du modèle et de la vue)
 
AngularJS
Un cadre MVC (Modèle-Vue-Contrôleur) JavaScript utilisant un modèle de données en JavaScript.
 
Base de données relationnelle
Une base de données qui structure les données stockées en utilisant des relations identifiables.
 
Base de données NoSQL
Une base de données qui ne stocke pas les relations entre les données.
 
CouchDB
Un type de stockage de base de données NoSQL orienté document, utilisant la forme de document JSON pour stocker des données.
 
ASP.NET
Cadre web serveur développé par Microsoft
 
PHP
Un langage de script serveur utilisé pour créer des pages web dynamiques
 
Ruby on Rails
Un cadre d'application web serveur écrit en Ruby
 
Node.js
Basé sur GoogleV8Serveur JavaScript du moteur.
 
java
Un langage de programmation orienté objet.
 
JSON servira également de fichier de configuration statique
 
En considérant quel format de données utiliser, la forme des données et le système d'échange de données doivent être pris en compte.!!!JSON n'est pas toujours le meilleur choix.

Déclaration : Le contenu de cet article est issue du réseau, propriété des auteurs respectifs, le contenu est apporté par les utilisateurs de l'internet, le site Web ne détient pas de propriété, n'a pas été traité par l'éditeur humain et n'assume aucune responsabilité juridique. Si vous trouvez du contenu présumé enfreignant les droits d'auteur, vous pouvez envoyer un e-mail à : notice#oldtoolbag.com (veuillez remplacer # par @ lors de l'envoi d'un e-mail pour signaler une violation, et fournir des preuves pertinentes. Une fois confirmée, le site supprimera immédiatement le contenu présumé enfreignant les droits d'auteur.)

You May Also Like