Dart 将值从登录表单传递到仪表板

Dart 将值从登录表单传递到仪表板,dart,dart-polymer,Dart,Dart Polymer,在dart polymer中检索登录表单上输入的用户名的最佳方法是什么,以便在重定向到的下一页中读取 登录组件如下所示- @CustomTag('alfresco-login-form') 类LoginFormComponent使用聚合物扩展FormElement,可观察{ LoginFormComponent.created():super.created(); @可观察字符串username=“”; @可观察字符串密码=”; @可观测地图loginData=toObservable({ “用

在dart polymer中检索登录表单上输入的用户名的最佳方法是什么,以便在重定向到的下一页中读取

登录组件如下所示-

@CustomTag('alfresco-login-form')
类LoginFormComponent使用聚合物扩展FormElement,可观察{
LoginFormComponent.created():super.created();
@可观察字符串username=“”;
@可观察字符串密码=”;
@可观测地图loginData=toObservable({
“用户名”:“,
“密码”:”
});
@可观察字符串serverResponse='';
HttpRequest请求;
无效提交表单(事件e、变量详细信息、节点目标){
e、 preventDefault();//不执行默认提交。
请求=新的HttpRequest();
request.onReadyStateChange.listen(onData);
//将数据发布到服务器。
var url='1〕http://127.0.0.1/alfresco/service/api/login';
打开(“POST”,url);
请求。发送(_logindaasjsondata());
}
void onData(u){
如果(request.readyState==HttpRequest.DONE&&
request.status==200){
//数据保存正常。
serverResponse='Server Sez:'+request.responseText;
Map parsedMap=JSON.decode(request.responseText);
var currentTicket=新票证(parsedMap[“数据”][“票证]);
//保持“返回历史记录”按钮处于活动状态
//window.location.assign('dashboard.html');
//不保持“返回历史记录”按钮处于活动状态
//不会将原始页面放入会话历史记录中
window.location.replace('dashboard.html');
}else if(request.readyState==HttpRequest.DONE&&
request.status==0){
//状态为0…很可能服务器未运行。
serverResponse='没有服务器';
}
}
字符串_logindaasjsondata(){
返回JSON.encode(loginda);
}
}

我需要访问登录数据['username']&parsedMap[“data”][“ticket”]才能在dashboard.html页面上找到。这不是一个真正的答案,但要想获得评论:


您的代码显示如何将凭据发送到服务器。所以我之前的评论仍然适用。不能只将变量传递到新页面。加载页面时,这就像重新启动应用程序一样。如果两个页面都是从同一个域加载的,您可以将重定向到的URL中的值作为cookie传递,或者您可以从之前存储它们的服务器重新加载它们。要知道新页面是由同一用户请求的,您必须使用一些会话处理(如前面提到的会话cookie)。这与Dart或聚合物无关。这更多的是关于网络的工作原理。

我认为你应该多解释一下你想做什么。你为什么要重定向。重定向之前执行的操作。根据您提供的信息,我建议将数据发送到表单提交服务器。使用会话id(例如cookie)标识用户,并在新页面上从服务器获取数据。@günterZöchbauer我已根据您的请求编辑了问题。如果您需要我方提供更多信息,请告诉我。