Dart中的令牌认证

时间:2013-12-15 22:49:16

标签: authentication authorization dart

Securing Single Page Apps and REST Services阅读James Wards artice之后,我非常想在Dart中实现这一点。但是我在Dart中发现了很少有关于身份验证主题的例子。我特别感兴趣的是从文章中实施步骤6 - 9:

  • 服务器验证登录信息并创建一个 用户的身份验证令牌
  • 服务器设置身份验证 Cookie中的令牌并将其返回给JavaScript应用程序
  • JavaScript应用程序请求一些受保护的数据, 在自定义标头中发送身份验证令牌
  • 服务器验证令牌,然后返回数据

有人可以在Dart中提供简单的客户端/服务器示例。提前谢谢。

1 个答案:

答案 0 :(得分:4)

我建议最简单的方法是在服务器上使用带有Dart的Google OAuth2 pub包来生成令牌,如tutorial所述。

如果你想像James建议的那样使用cookie存储令牌,你可以这样做:

document.cookie = "token=TOKEN;max-age=${60*60*24*7*4}";

你读这样的cookie:

var token = document.cookie.replace(/(?:(?:^|.*;\s*)token\s*\=\s*([^;]*).*$)|^.*$/, "$1");

然后将其发回到这样的自定义标题中:

HttpRequest req = new HttpRequest();
req.open("Get", "www.server.com");
req.setRequestHeader("custom-token-header", token);

然后您可以按照教程中的描述验证令牌。