Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 44999|Répondre: 4

[ASP.NET] asp.net MVC permet à une seule méthode contrôleur de croiser les domaines

[Copié le lien]
Publié sur 31/07/2018 10:13:37 | | | |
Qu’est-ce que Cors ?

CORS est une norme W3C, qui signifie « Cross-origin resource sharing » (partage de ressources entre origines).
Il permet au navigateur de faire des requêtes XMLHttpRequest à des serveurs cross-origin, contournant ainsi la limitation selon laquelle l’AJAX ne peut être utilisé qu’homogènement.

1. Introduction

CORS nécessite à la fois le support du navigateur et du serveur. Actuellement, tous les navigateurs prennent en charge cette fonctionnalité, et le navigateur IE ne peut pas être inférieur à IE10.

L’ensemble du processus de communication CORS est effectué automatiquement par le navigateur et ne nécessite pas la participation de l’utilisateur. Pour les développeurs, la communication CORS n’est pas différente de la communication AJAX homologue, et le code est exactement le même. Une fois que le navigateur constate qu’une requête AJAX traverse la source, il ajoute automatiquement des informations supplémentaires sur l’en-tête, et parfois une requête supplémentaire, mais l’utilisateur ne le ressentira pas.

Par conséquent, la clé pour obtenir une communication CORS est le serveur. Tant que le serveur implémente l’interface CORS, il peut communiquer entre les sources.

En fait, les programmes de serveur web (comme ASP.NET ou PHP, etc.) ne peuvent pas distinguer et ne géreront pas si une requête Http entrante est une requête Ajax inter-domaine.CORS est conçu pour résoudre ce problème, et la norme CORS personnalisée du W3C offre aux navigateurs un mécanisme permettant les requêtes inter-domaines Ajax.

2 : Code de requête JS Ajax natif

Comme je ne veux pas référencer jQuery, j’ai encapsulé les méthodes suivantes avec js, comme suit :

Ajax demande des tests d’interface et détecte une erreur comme suit :




Trois : Définir une méthode contrôleur permettant le cross-domain

Comme ci comme çaTous sont autorisésLa méthode contrôleur ou API est cross-domaine, dans le fichier web.configsystem.webServerLa configuration suivante est ajoutée sous le nœud :

Ce qui précède n’est pas le résultat que nous espérions ! Si nous voulons permettre à un seul nom de domaine d’accéder à l’une de nos interfaces entre deux domaines, nous devons définir une fonctionnalité qui ressemble à ceci :

Le code pour définir les permissions d’accès inter-domaines est ce paragraphe : HttpContext.Response.AppendHeader(« Access-Control-Allow-Origin », origin) ;

Nous définissons les caractéristiques au-dessus de la méthode contrôleur comme suit :

Nous relançons la requête Ajax avec le résultat présenté ci-dessous :



Les ressources d’interface API de nos autres sites web sont accessibles avec succès.

(Fin)





Précédent:Bonjour à tous{ :1_7 :}
Prochain:Le texte CSS est caché au-delà des deux méthodes
 Propriétaire| Publié sur 17/06/2019 14:23:05 |
Les méthodes de requête HTTP ne sont pas seulement GET et POST, mais sont simplement les plus couramment utilisées. Selon RFC2616 norme (HTTP/1.1 actuelle), il existe généralement 8 méthodes : OPTIONS, POST, PUT, DELETE, TRACE et CONNECT.

La méthode de requête OPTIONS a deux usages principaux :

1. Obtenir la méthode de requête HTTP prise en charge par le serveur ; C’est aussi une méthode souvent utilisée par les hackers.

2. Utilisé pour vérifier les performances du serveur. Par exemple, lorsque l’AJAX effectue une requête inter-domaine, il doit envoyer un en-tête HTTP OPTIONS à la ressource d’un autre nom de domaine pour déterminer si la requête réelle est sécurisée.
 Propriétaire| Publié sur 04/11/2019 17:29:52 |
jquery.min.js:2 Cross-Origin Read Blocking (CORB) blocked cross-origin response http://192.168.252.193:2019/home/testavec application de type MIME/json. Voirhttps://www.chromestatus.com/feature/5629709824032768Pour plus de détails.
 Propriétaire| Publié sur 19/01/2020 15:33:23 |

Publié sur 12/11/2021 15:59:52 |
Bien écrit, savant
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com