2017-02-20 58 views
1

測試CORS我使用Anypoint工作室6.1和Mule 3.8.1,並有騾子RESTful應用程序,我想從應用程序所接受停止CORS請求。如何用騾子

應用程序已被設置爲做到這一點,但什麼是要證明這是工作的最佳方式?

從我到目前爲止閱讀的內容來看,這些示例構建了自己的應用程序,我只想做一些事情,例如發送配置爲Postman中的CORS請求的請求。我怎樣才能做到這一點?

感謝

回答

1

我想從應用程序所接受停止CORS請求。 我只想做一些像發送配置爲CORS請求郵差

你的意思是你想只在瀏覽器中運行的Web應用程序阻止跨域請求的請求?

考慮到瀏覽器是唯一強制實施CORS限制的工具,而且它們只對來自實際Web應用程序中運行的代碼的請求執行此操作,而不適用於來自不受同源策略約束的Postman等擴展的請求即Web應用程序 - 那麼您將無法使用CORS來阻止來自Postman的請求,也不能從瀏覽器中的Web應用程序運行代碼。

該應用程序已被設置爲這樣做,但什麼是證明這是工作的最好方法?

確認該服務不會發送Access-Control-Allow-Origin響應頭,它永遠不會是,除非它要麼被明確配置爲做到這一點,或者它使用一些服務器端編程環境建/框架,默認添加Access-Control-Allow-Origin

但是由於瀏覽器是唯一可以阻止因爲缺少Access-Control-Allow-Origin而導致跨源請求的工具,因此您只能在Web應用程序中測試阻止。

否則,您至少可以在瀏覽器外部進行測試,以查看服務器將請求發送到哪個響應標頭。在這種情況下做的主要事情是可以肯定的請求發送Origin頭(某些服務器只發送Access-Control-Allow-Origin如果請求包括Origin頭,因爲瀏覽器是唯一的工具,自動發送Origin

因此,使用curl例如,您想要這樣做:

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