我正在为我的应用程序使用Play Framework和Angularjs。我的要求是根据在UI上选择的某个参数重定向Play框架页面。使用Play Framework和Angularjs从本地重定向问题
这里是我的代码,
上页我打开引导模式对话框,并在提交行动呼吁角度支柱方法,
$scope.loginToExt = function() {
var data = $scope.env;
$http.post('/login', {env: data})
.success(function(data){
//$scope.env = data
})
.error(function(data){
console.log(data)
});
};
一旦我点击我的模式提交,它会调用“/登录”并根据我的路由映射将调用下面的操作方法,
def login = Action(parse.json) { implicit request =>
val env = (request.body \ "env").as[String]
env match {
case _ => {
Redirect("https://google.com")
.withHeaders(ACCESS_CONTROL_ALLOW_ORIGIN -> "*")
}
}
路由文件如下,
POST /login controllers.Application.login
我不知道是什么问题,但我得到如下错误,无法重定向我的网页。
XMLHttpRequest无法加载https://google.com/。请求的资源上没有“Access-Control-Allow-Origin”标题。因此不允许访问原产地'http://localhost:9000'。
感谢您的帮助......但有什么方法可以将其从Play控制器重定向吗? – Nishan
我不这么认为。请参阅http://stackoverflow.com/a/15996968/1956540,在它的评论中指出,由于XHR请求的性质,以这种方式重定向不起作用。 – BatteryAcid
再次感谢您的时间。这似乎很难实现这个使用JavaScript,所以我已经取代了JavaScript逻辑与播放HTML形式和基于控制器的本机逻辑。目前没有使用JavaScript,现在它按预期工作。 – Nishan