我已启用Angular / CLI代理以将我的请求代理到其余服务器(端口9000上的PlayFramework)。我用
启动代理服务器ng serve --open --proxy-config src/proxy.conf.js --host 0.0.0.0
这是配置
const PROXY_CONFIG = {
"**": {
"target": "http://localhost:9000",
"secure": false,
"changeOrigin": true,
"logLevel": "debug",
"bypass": function (req) {
if (req.headers.accept.indexOf("html") !== -1) {
console.log("Skipping proxy for browser request.");
return "/index.html";
}
}
}
};
module.exports = PROXY_CONFIG;
我无法从Play服务器获得404答复,但对于未知路线,我一直能获得OK 200。重要的是要获得404,因为如果用户无权获得某条路线,则PlayServer会以404进行响应。使用Postman时,看起来像这样 运行时
http://localhost:9000/api/secured
我得到404,就可以了
运行时
http://localhost:4200/api/secured
我得到200,并且它可以返回本地路线
答案 0 :(得分:0)
好的,所以我弄清楚了,我的错。我在安全性方面拥有
private def onUnauthorized(request: RequestHeader) = Results.Redirect(routes.FrontendController.index())
/**
* Action for authenticated users.
*/
def IsAuthenticated(f: => User => Request[AnyContent] => Result) = Security.Authenticated(username , onUnauthorized) { username =>
那是重定向:(