【问题标题】:X-CSRF-Token issue in ionic. Every time a different token is receivedionic 中的 X-CSRF-Token 问题。每次收到不同的令牌时
【发布时间】:2016-02-19 08:33:05
【问题描述】:

我有一个 Drupal 的后端。

使用 Drupal 服务 进行交互。它提供了一个休息服务器。 已创建名为 'api' 的端点。

以下顺序在普通浏览器或任何 http 客户端(如邮递员)中工作:-

  • example.com/api/login(有效)。
  • api 发回用户数据(令牌、会话 ID、会话名称等)。
  • 如果我提出任何请求,我会将令牌作为 X-CSRF-Token 发送(所有请求都有效)。
  • 我什至可以使用之前收到的令牌注销同一个会话。

在 IONIC 应用程序中:-

我可以登录,登录后我还将用户数据(令牌、会话数据等)存储在本地存储中。

这是应用程序的区别:-

当我在发出请求时将相同的令牌发送回服务器(比如注销)。

服务器的响应是“用户未登录。”

为什么会这样?

更新:-

登录后我尝试从服务器获取当前令牌,但它与我成功登录后保存的不同。

每次收到不同的令牌。

【问题讨论】:

    标签: authentication drupal ionic-framework token drupal-services


    【解决方案1】:

    我遇到了同样的问题。问题是我从未设置过 cookie,而 chrome 会自动为我设置。

    幸运的是我找到了这个很棒的网站:

    drupalionic.org

    有查看演示的链接以及良好的描述和代码。

    所以你要做的是: - 登录 - 检索会话数据并设置 cookie - 使用标头中的 cookie 数据和 X-CSRF-Token 执行后续请求

    这是流程图:

    这对您有帮助吗?

    【讨论】:

    • 是的,它肯定有帮助!至少现在我知道需要 cookie。在我尝试形成 cookie 并每次发送它之前,但它没有用!该图像显示两个标题为“X-csrf-token”和“授权”。是授权还是 Cookie 标头?任何 shrt 示例在 Authorization 中传递什么?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-19
    • 2014-09-25
    • 1970-01-01
    • 2011-09-28
    • 2016-06-21
    • 2018-03-15
    • 2022-08-18
    相关资源
    最近更新 更多