当我想从一个有角度的应用程序访问它时,我的DropWizard服务器出了问题。 错误是:
XMLHttpRequest cannot load https://localhost:8080/admin/metrics. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8000' is therefore not allowed access.
我已经看过这里了 Dropwizard resolving CORS issues
它实际上适用于以下地址:
https://localhost:8080/myResource/list
但不是预先配置的/ admin资源
https://localhost:8080/admin/metrics.
似乎表明添加到环境中的过滤器仅用于/ api而不用于/ admin ...
我需要帮助吗?
答案 0 :(得分:0)
答案实际上就是你已经看过的那个主题:
支持[1]运行与主要资源相同的端口的管理路由。将您的port和adminPort设置设置为相同的值,然后访问/ admin下的管理路由(例如,如果您正在点击 example.com:8081/metrics ,请转到 example.com:改为8080 / admin / metrics 。就像Ryan说的那样,你需要保护/ admin下的所有东西,所以Dropwizard内置了设置(adminUsername和adminPassword [2]),让你通过HTTP基本身份验证来实现这一点。
2:http://dropwizard.codahale.com/manual/core/#configuration-defaults
迈克尔