Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Test CORS
Per testare la CORS configurazione, è possibile inviare una richiesta di CORS preflight con il OPTIONS
metodo in modo che il server possa rispondere se l'invio della richiesta è accettabile. Quando Amazon S3 riceve una richiesta di preflight, S3 valuta la CORS configurazione per il bucket e utilizza la prima CORSRule
regola che corrisponde alla richiesta in entrata per abilitare una richiesta multiorigine. Per garantire la corrispondenza tra la regola e la richiesta, è necessario che siano soddisfatte le condizioni elencate di seguito.
-
L'
Origin
intestazione di una CORS richiesta al tuo bucket deve corrispondere alle origini dell'elemento della tua configurazione.AllowedOrigins
CORS -
I HTTP metodi specificati
Access-Control-Request-Method
in una CORS richiesta al bucket devono corrispondere al metodo o ai metodi elencati nell'AllowedMethods
elemento della configurazione. CORS Le intestazioni elencate nell'
Access-Control-Request-Headers
intestazione di una richiesta di preflight devono corrispondere alle intestazioni dell'elemento dellaAllowedHeaders
configurazione. CORS
Di seguito è riportato un esempio di configurazione. CORS Per creare una CORS configurazione, vedere Configurazione CORS. Per altri esempi di CORS configurazione, vedi Elementi di una CORS configurazione.
Per testare la CORS configurazione, è possibile inviare un OPTIONS
controllo preliminare utilizzando il CURL comando seguente. CURLè uno strumento da riga di comando che può essere utilizzato per interagire con S3. Per ulteriori informazioni, consulta. CURL
curl -v -X OPTIONS \ -H "Origin: http://www.example1.com" \ -H "Access-Control-Request-Method: PUT" \ -H "Access-Control-Request-Headers: Authorization" \ -H "Access-Control-Expose-Headers: x-amz-meta-custom-header"\ "http://bucket_name.s3.amazonaws.com/object_prefix_name"
Nell'esempio precedente, il curl -v -x OPTIONS
comando viene utilizzato per inviare una richiesta di preflight a S3 per chiedere se S3 gli consente di inviare una PUT
richiesta su un oggetto dall'origine incrociata. http://www.example1.com
Le intestazioni e sono opzionaliAccess-Control-Request-Headers
. Access-Control-Expose-Headers
-
In risposta all'
Access-Control-Request-Method
intestazione dellaOPTIONS
richiesta di preflight, Amazon S3 restituisce l'elenco dei metodi consentiti se i metodi richiesti corrispondono. -
In risposta all'
Access-Control-Request-Headers
intestazione nellaOPTIONS
richiesta di preflight, Amazon S3 restituisce l'elenco delle intestazioni consentite se le intestazioni richieste corrispondono. -
In risposta all'
Access-Control-Expose-Headers
intestazione nellaOPTIONS
richiesta di preflight, Amazon S3 restituisce un elenco di intestazioni consentite se le intestazioni richieste corrispondono alle intestazioni consentite a cui possono accedere gli script in esecuzione nel browser.
Nota
Quando si invia una richiesta di preflight, se nessuna delle intestazioni della richiesta non è consentita, non viene CORS restituita nessuna delle intestazioni di risposta. CORS
In risposta a questa OPTIONS
richiesta di preflight, riceverai una risposta. 200 OK
Per i codici di errore più comuni ricevuti durante il test CORS e ulteriori informazioni per risolvere i problemi CORS correlati, vedi Risoluzione dei problemi CORS.
< HTTP/1.1 200 OK < Date: Fri, 12 Jul 2024 00:23:51 GMT < Access-Control-Allow-Origin: http://www.example1.com < Access-Control-Allow-Methods: GET, PUT, POST, DELETE < Access-Control-Allow-Headers: Authorization < Access-Control-Expose-Headers: x-amz-meta-custom-header < Access-Control-Allow-Credentials: true < Vary: Origin, Access-Control-Request-Headers, Access-Control-Request-Method < Server: AmazonS3 < Content-Length: 0