【问题标题】:How to create JSESSIONID for API test如何为 API 测试创建 JSESSIONID
【发布时间】:2018-10-08 09:51:32
【问题描述】:

我们有一个 JSP 应用程序,我们正在将其迁移到 Angular 和 Rest API。 Rest APIs 检查 JSESSIONID 是否已在 cookie 中提供并且有效。

JSESSIONID 在登录时创建(当前是 JSP),稍后在 Angular 页面上使用此 cookie 进行 API 调用(有效)。

我正在编写 Node.js 测试 (javascript) 以直接调用 API 进行组件测试。 API 需要 JSESSIONID 来验证调用。如何为 Node.js 测试创建 JSESSIONID?

【问题讨论】:

    标签: java node.js angular jsp jsessionid


    【解决方案1】:

    假设您没有为 API 层实现额外的授权方法,例如OAuth 2.0 然后简单地调用应用程序的登录页面并保存从登录页面响应中获得的JSESSIONID

    合理的安全准则规定 JSESSIONID 应在登录时重新生成并在注销时丢弃以防止会话攻击,例如会话劫持。除非您在测试期间禁用 API 中的授权,否则您应该在每个测试套件中至少完成一次登录过程。

    【讨论】:

    • 感谢您的快速回复@Karol。我是 Java 新手,所以我可以确认您是否建议在 Java 中创建一个新的 API,该 API 将执行与当前 Login JSP 页面类似的操作? (即创建新会话 request.getSession().setAttribute("loggedIn",true))并将会话 ID 作为 API 响应返回?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-21
    • 2021-05-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多