如何使用 Mule 测试 CORS
How to test CORS with Mule
我正在使用 Anypoint Studio 6.1 和 Mule 3.8.1,并且有一个 mule RESTful 应用程序,我想阻止应用程序接受 CORS 请求。
应用程序已设置为执行此操作,但证明此功能有效的最佳方法是什么?
根据我目前所读的内容,这些示例构建了自己的应用程序,我只想做一些事情,比如在 Postman 中发送一个配置为 CORS 请求的请求。我该怎么做?
谢谢
I want to stop CORS requests from being accepted by the application.
I would just like to do something like send a request configured as a CORS request in Postman
您的意思是您只想在浏览器中阻止来自 Web 应用程序 运行 的 cross-origin 请求?
鉴于浏览器是唯一强制实施 CORS 限制的工具,并且它们仅针对来自实际 Web 应用程序中的代码 运行 的请求执行此操作——不适用于来自不受约束的扩展程序(例如 Postman)的请求Web 应用程序的 same-origin 政策——那么您将无法使用 CORS 来阻止来自 Postman 或来自浏览器中来自 Web 应用程序的非 运行 代码的请求。
The application has been setup to do this but what is the best way to prove this is working?
确认该服务没有发送 Access-Control-Allow-Origin
响应 header——它永远不会发送,除非它被明确配置为这样做或者它是使用一些 server-side 编程构建的environment/framework 默认添加 Access-Control-Allow-Origin
。
但是由于缺少 Access-Control-Allow-Origin
,浏览器是唯一真正会阻止 cross-origin 请求的工具,您实际上只能在 Web 应用程序中测试阻止。
否则,您至少可以在浏览器外部进行测试,以查看发送请求的服务器返回了哪些响应 header。在这种情况下要做的主要事情是确保请求发送 Origin
header(如果请求包含 Origin
[=38=,某些服务器仅发送 Access-Control-Allow-Origin
]—因为浏览器是唯一自动发送 Origin
.
的工具
因此,以 curl
为例,您需要这样做:
curl -H "Origin: https://example.com" https://service.to.test/
我正在使用 Anypoint Studio 6.1 和 Mule 3.8.1,并且有一个 mule RESTful 应用程序,我想阻止应用程序接受 CORS 请求。
应用程序已设置为执行此操作,但证明此功能有效的最佳方法是什么?
根据我目前所读的内容,这些示例构建了自己的应用程序,我只想做一些事情,比如在 Postman 中发送一个配置为 CORS 请求的请求。我该怎么做?
谢谢
I want to stop CORS requests from being accepted by the application. I would just like to do something like send a request configured as a CORS request in Postman
您的意思是您只想在浏览器中阻止来自 Web 应用程序 运行 的 cross-origin 请求?
鉴于浏览器是唯一强制实施 CORS 限制的工具,并且它们仅针对来自实际 Web 应用程序中的代码 运行 的请求执行此操作——不适用于来自不受约束的扩展程序(例如 Postman)的请求Web 应用程序的 same-origin 政策——那么您将无法使用 CORS 来阻止来自 Postman 或来自浏览器中来自 Web 应用程序的非 运行 代码的请求。
The application has been setup to do this but what is the best way to prove this is working?
确认该服务没有发送 Access-Control-Allow-Origin
响应 header——它永远不会发送,除非它被明确配置为这样做或者它是使用一些 server-side 编程构建的environment/framework 默认添加 Access-Control-Allow-Origin
。
但是由于缺少 Access-Control-Allow-Origin
,浏览器是唯一真正会阻止 cross-origin 请求的工具,您实际上只能在 Web 应用程序中测试阻止。
否则,您至少可以在浏览器外部进行测试,以查看发送请求的服务器返回了哪些响应 header。在这种情况下要做的主要事情是确保请求发送 Origin
header(如果请求包含 Origin
[=38=,某些服务器仅发送 Access-Control-Allow-Origin
]—因为浏览器是唯一自动发送 Origin
.
因此,以 curl
为例,您需要这样做:
curl -H "Origin: https://example.com" https://service.to.test/