Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 44999|Svar: 4

[ASP.NET] asp.net MVC tillader en enkelt controller-metode at krydse domæner

[Kopier link]
Opslået på 31/07/2018 10.13.37 | | | |
Hvad er Cors?

CORS er en W3C-standard, som står for "Cross-origin resource sharing".
Det gør det muligt for browseren at lave XMLHttpRequest-forespørgsler til cross-origin servere, hvilket overvinder begrænsningen i, at AJAX kun kan bruges homogent.

1. Introduktion

CORS kræver både browser- og serverunderstøttelse. I øjeblikket understøtter alle browsere denne funktion, og IE-browseren kan ikke være lavere end IE10.

Hele CORS-kommunikationsprocessen gennemføres automatisk af browseren og kræver ikke brugerdeltagelse. For udviklere adskiller CORS-kommunikation sig ikke fra homolog AJAX-kommunikation, og koden er præcis den samme. Når browseren opdager, at en AJAX-anmodning krydser kilden, vil den automatisk tilføje yderligere header-information og nogle gange endnu en forespørgsel, men brugeren vil ikke mærke det.

Derfor er nøglen til at opnå CORS-kommunikation serveren. Så længe serveren implementerer CORS-grænsefladen, kan den kommunikere på tværs af kilder.

Faktisk kan webserverprogrammer (såsom ASP.NET eller PHP osv.) ikke skelne mellem og vil ikke styre, om en indkommende HTTP-forespørgsel er en tværdomæne Ajax-forespørgsel.CORS er designet til at løse dette problem, og W3C's tilpassede CORS-standard giver browsere en mekanisme til at tillade Ajax-krydsdomæneanmodninger.

2: Indbygget JS Ajax-anmodningskode

Da jeg ikke ønsker at referere til jQuery, har jeg indkapslet følgende metoder med js, som følger:

Ajax anmoder om interfacetests og finder en fejl som følger:




Tre: Sæt en controller-metode, der tillader krydsdomæne

Så såAlle er tilladtControlleren eller API-metoden er tværdomænet, i web.config-filensystem.webServerFølgende konfiguration tilføjes under noden:

Ovenstående er ikke det resultat, vi ønskede! Hvis vi vil tillade kun et domænenavn at få adgang til et af vores interfaces på tværs af domæner, skal vi definere en funktion, der ser sådan ud:

Koden til at sætte krydsdomæneadgangstilladelser er dette afsnit HttpContext.Response.AppendHeader ("Access-Control-Allow-Origin", oprindelse);

Vi sætter karakteristikaene oven på controller-metoden som følger:

Vi starter Ajax-anmodningen igen med resultatet som vist nedenfor:



API-grænsefladeressourcer fra vores andre hjemmesider kan tilgås med succes.

(Slut)





Tidligere:Hej alle sammen{:1_7:}
Næste:CSS-tekst er skjult bag de to metoder
 Udlejer| Opslået på 17/06/2019 14.23.05 |
HTTP-forespørgselsmetoder er ikke kun GET og POST, men er de mest almindeligt brugte. Ifølge RFC2616 standard (nuværende HTTP/1.1) er der normalt 8 metoder: OPTIONS, POST, PUT, DELETE, TRACE og CONNECT.

OPTIONS-anmodningsmetoden har to hovedanvendelser:

1. Få HTTP-anmodningsmetoden understøttet af serveren; Det er også en metode, der ofte bruges af hackere.

2. Bruges til at kontrollere serverens ydeevne. For eksempel, når AJAX laver en cross-domain forespørgsel, skal den sende et HTTP OPTIONS-header til ressourcen for et andet domænenavn for at afgøre, om den faktiske anmodning er sikker.
 Udlejer| Opslået på 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/testmed MIME-type applikation/json. Sehttps://www.chromestatus.com/feature/5629709824032768For flere detaljer.
 Udlejer| Opslået på 19/01/2020 15.33.23 |

Opslået på 12/11/2021 15.59.52 |
Velskrevet, lært
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com