1

我的无知在这一点上闪耀着光芒。我有一个使用 MEAN 堆栈(Mongo、Express、Angularjs、Nodejs)的 Web 应用程序,并且某些功能在移动设备上乏善可陈。因此,我正在 Appgyver Supersonic 平台上开发该应用程序的移动版本。Appgyver 框架基于 Angularjs 前端。

所以我希望只使用我为 Web 应用程序运行的相同 Express/Nodejs 服务器,并从移动应用程序进行查询/请求。身份验证是我当前的挑战。我假设我可以通过 POST 请求发送用户名和密码,然后登录并创建一个新会话。我可以登录,但无法访问会话 cookie connect.sid,因此我的下一个请求没有会话数据。

TLDR;我有一个 Angular 应用程序,它位于与我的 Express/Nodejs 后端不同的服务器上。我希望对 Angular 应用程序进行身份验证,但不知道如何访问 connect.sid cookie。

4

1 回答 1

0

由于这从未引起任何关注,我发现我认为是一个“可行”的解决方案,我想我会回答我自己的问题。如果你看到我在这里做了一些非常愚蠢的事情,请告诉我。

当我将客户端登录到服务器时,我会使用会话令牌进行响应。我将相同的令牌存储在 Mongoose 的用户配置文件中。我使用 localStorage 将令牌存储在移动设备上。

每当我向服务器发送请求时,我都会使用它发送令牌,并让服务器检查令牌是否与用户令牌匹配 - 如果匹配,我会获取用户配置文件数据并将其分配给 req.user;然后似乎使后端正常运行。

有什么重大的安全问题吗?

于 2015-09-10T19:46:19.157 回答