Köbegäran före avsänt

Åtgärden Preflight Queue Request frågar CORS-reglerna (Cross-Origin Resource Sharing) för Azure Queue Storage innan begäran skickas.

En webbläsare eller en annan användaragent skickar en preflight-begäran som innehåller ursprungsdomänen, -metoden och rubrikerna för den begäran som agenten vill göra. Om CORS har aktiverats för Queue Storage utvärderar Queue Storage förfrågningen mot CORS-reglerna som kontoägaren har konfigurerat via Ange egenskaper för kötjänsten. Queue Storage accepterar eller avvisar sedan begäran.

Mer information om CORS och förhandsbegäran finns i CORS-specifikationen och CORS-stöd för Azure Storage.

Förfrågan

Du kan ange Preflight Queue Request följande. Ersätt <account-name> med namnet på ditt lagringskonto. Ersätt <queue-resource> med namnet på köresursen som ska vara målet för begäran.

HTTP-verb URI för förfrågan HTTP-version
OPTIONS http://<account-name> .queue.core.windows.net/<queue-resource> HTTP/1.1

URI:n måste alltid innehålla snedstrecket (/) för att skilja värdnamnet från sökvägen och frågedelarna i URI:n. När det gäller den här åtgärden kan sökvägsdelen av URI:n vara tom eller peka på valfri köresurs.

Resursen kanske eller kanske inte finns vid den tidpunkt då begäran före start görs. Begäran före start utvärderas på tjänstnivå mot tjänstens CORS-regler, så förekomsten eller frånvaron av resursnamnet påverkar inte åtgärdens framgång eller misslyckande.

URI-parametrar

Inga.

Begärandehuvuden

I följande tabell beskrivs obligatoriska och valfria begärandehuvuden:

Begärandehuvud Beskrivning
Origin Krävs. Anger ursprunget som begäran ska utfärdas från. Ursprunget kontrolleras mot tjänstens CORS-regler för att fastställa om begäran lyckades eller misslyckades.
Access-Control-Request-Method Krävs. Anger metoden (eller HTTP-verbet) för begäran. Metoden kontrolleras mot tjänstens CORS-regler för att fastställa felet eller framgången för förfrågningsbegäran.
Access-Control-Request-Headers Valfritt. Anger de begärandehuvuden som ska skickas. Om den inte finns förutsätter tjänsten att begäran inte innehåller rubriker.

Begärandetext

Inga.

Svarsåtgärder

Svaret innehåller en HTTP-statuskod och en uppsättning svarshuvuden.

Statuskod

En lyckad åtgärd returnerar statuskoden 200 (OK).

Information om statuskoder finns i Status och felkoder.

Svarshuvuden

Svaret för den här åtgärden innehåller följande rubriker. Svaret kan också innehålla ytterligare HTTP-standardhuvuden. Alla standardhuvuden överensstämmer med HTTP/1.1-protokollspecifikationen.

Mer information om preflight-begärandehuvuden finns i CORS-specifikationen.

Svarsrubrik Description
Access-Control-Allow-Origin Anger det tillåtna ursprunget, som matchar ursprungshuvudet i begäran om preflight-begäran lyckas.
Access-Control-Allow-Methods Om preflight-begäran lyckas anges det här huvudet till det värde eller värden som angetts för begärandehuvudet Access-Control-Request-Method.
Access-Control-Allow-Headers Om preflight-begäran lyckas anges det här huvudet till det värde eller värden som angetts för begärandehuvudet Access-Control-Request-Headers.
Access-Control-Max-Age Anger hur lång tid som användaragenten tillåts cachelagrar preflight-begäran för framtida begäranden.
Access-Control-Allow-Credentials Anger om begäran kan göras via autentiseringsuppgifter. Det här huvudet är alltid inställt på true.

Själva svaret

Inga.

Auktorisering

Åtgärden Preflight Queue Request körs alltid anonymt. Det kräver inte auktorisering och ignorerar autentiseringsuppgifter om de tillhandahålls.

Anteckning

Om du har aktiverat Azure Storage-analys och loggar mått loggas ett anrop till Preflight Queue Request åtgärden som AnonymousSuccess. Därför visas AnonymousSuccess loggad för Preflight Queue Requestom du visar mått i Azure Portal. Det här måttet anger inte att dina privata data har komprometterats, utan bara att Preflight Queue Request åtgärden lyckades med statuskoden 200 (OK).

Exempel på begäran och svar

I följande exempel skickas en preflight-begäran för ursprunget www.contoso.com. Begärandemetoden är inställd på PUToch begärandehuvudena är inställda på content-type och accept.

OPTIONS http://myaccount.queue.core.windows.net/myqueue  HTTP/1.1  
Accept: */*  
Origin: www.contoso.com  
Access-Control-Request-Method: PUT  
Access-Control-Request-Headers: content-type, accept  
Accept-Encoding: gzip, deflate  
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)  
Content-Length: 0  
  

Svaret anger att CORS är aktiverat för tjänsten och att en CORS-regel matchar förfrågningsbegäran:

HTTP/1.1 200 OK  
Connection: Keep-Alive  
Content-Length: 0  
Content-Type: text/html; charset=UTF-8  
Access-Control-Allow-Origin: *  
Access-Control-Max-Age: 60  
Access-Control-Allow-Methods: PUT  
Access-Control-Allow-Headers: accept,content-type  
  

Kommentarer

Om CORS är aktiverat för tjänsten och en CORS-regel matchar preflight-begäran svarar tjänsten på preflight-begäran med statuskod 200 (OK). Svaret innehåller de nödvändiga Access-Control rubrikerna. I det här fallet debiteras begäran.

Om CORS inte är aktiverat eller om ingen CORS-regel matchar preflight-begäran svarar tjänsten med statuskod 403 (Förbjuden). I det här fallet faktureras inte begäran.

OPTIONS Om begäran är felaktig svarar tjänsten med statuskod 400 (felaktig begäran) och begäran faktureras inte. Ett exempel på en felaktig begäran är en begäran som inte innehåller de nödvändiga OriginAccess-Control-Request-Method och rubrikerna.

Preflight-begäran är en mekanism för att fråga CORS-funktionen för en lagringstjänst som är associerad med ett visst lagringskonto. Begäran före avfärd är inte riktad till en specifik resurs.

Se även

Åtgärder för kontot (Queue Storage)
CORS-stöd för Azure Storage