2017-02-20 6 views
1

Ich verwende Anypoint Studio 6.1 und Mule 3.8.1 und habe eine RESTful-Anwendung für Mule, die verhindern soll, dass CORS-Anfragen von der Anwendung akzeptiert werden.Testen von CORS mit Mule

Die Anwendung wurde eingerichtet, um dies zu tun, aber was ist der beste Weg zu beweisen, dass dies funktioniert?

Von dem, was ich bisher gelesen habe, erstellen die Beispiele ihre eigene Anwendung und ich möchte nur etwas wie eine Anfrage senden, die als eine CORS-Anfrage in Postman konfiguriert ist. Wie kann ich das machen?

Dank

Antwort

1

Ich möchte von CORS-Anfragen stoppen von der Anwendung akzeptiert. Ich möchte nur etwas tun, wie eine Anfrage als CORS Anfrage in Postman

Sie Sie Anfragen Cross-Origin nur von Web-Anwendungen in Browsern laufen blockieren möchten bedeuten konfiguriert schicken? Die Browser sind die einzigen Tools, die CORS-Einschränkungen erzwingen, und zwar nur für Anforderungen von Code, der in aktuellen Web-Apps ausgeführt wird - nicht für Anforderungen von Erweiterungen wie Postman, die nicht an die Richtlinie für denselben Ursprung gebunden sind dass Web-Apps sind - dann können Sie CORS nicht verwenden, um Anfragen von Postman oder von Code zu blockieren, der nicht von einer Web-App in einem Browser ausgeführt wird.

Die Anwendung wurde eingerichtet, um dies zu tun, aber was ist der beste Weg, um zu beweisen, dass dies funktioniert?

Bestätigen der Dienst nicht ein Access-Control-Allow-Origin Antwort-Header-was zu senden es nie, es sei denn wäre es entweder ausdrücklich, dass zu tun, wurde konfiguriert oder es ist mit einiger serverseitige Programmierumgebung/Framework aufgebaut, die Access-Control-Allow-Origin standardmäßig erstellt.

Da Browser jedoch die einzigen Tools sind, die jemals Cross-Origin-Anfragen blockieren, weil Access-Control-Allow-Origin fehlt, können Sie die Blockierung wirklich nur in einer Web-App testen.

Andernfalls können Sie zumindest außerhalb des Browsers testen, welche Antwort-Header vom Server zurückgegeben werden, an den die Anforderungen gesendet werden. Die Hauptsache in diesem Fall zu tun ist, die Anforderung zu sicher sein, ein Origin Header senden (einige Server nur Access-Control-Allow-Origin senden, wenn eine Anforderung enthält eine Origin Kopf da Browser die einzigen Werkzeuge, die automatisch Origin senden.

Also, mit curl zum Beispiel möchten Sie dies tun:

curl -H "Origin: https://example.com" https://service.to.test/