【问题标题】:can't access httponly cookie from react js but can access in postman app! how is it possible?无法从 react js 访问 httponly cookie,但可以在邮递员应用程序中访问!这怎么可能?
【发布时间】:2019-12-29 04:39:00
【问题描述】:

我向服务器发送请求以登录并在此操作后获取带有令牌值和仅 HTTP 标记的 cookie 我无法在我的反应应用程序中访问 c​​ookie 值,但我在邮递员应用程序中对其进行了测试,我可以在此应用程序中看到 cookie如果我可以在邮递员应用程序中看到它,那么我可以在我的应用程序中看到它!他们之间有什么不同?有没有办法在反应应用程序中获取仅 HTTP 的 cookie? result from request response from server in postman

【问题讨论】:

    标签: reactjs cookies httponly


    【解决方案1】:

    您无法访问 react 或任何 javascript 框架中的 httponly cookie。 你可以在 postman 中看到它,因为在这种情况下,postman 就像一个浏览器,它自己保存所有的 cookie,然后你就可以看到它们。

    【讨论】:

    • 感谢您的回复,但除了浏览器中的 JavaScript,我看不到 cookie
    • 我没明白你的意思。你的意思是你不能在浏览器中看到cookies?你如何尝试看到他们?通过 javascript 还是使用插件? @Mohsen Mohebbi
    【解决方案2】:

    这正是 HttpOnly cookie 的目的。

    服务器将 cookie 与响应一起发送,浏览器存储它并将其与任何请求一起发送到该 cookie 的域。但是浏览器会阻止任何运行在它上面的代码访问它。

    为什么?,这创建了一种安全的方式来存储敏感信息,例如身份验证令牌,防止页面中的任何注入代码访问它。

    https://www.owasp.org/index.php/HttpOnly

    【讨论】:

    • 那么您如何读取用于登录/注册目的的 cookie?或者,你用别的东西吗?
    • 好吧,你不知道。 cookie 包含服务器发送的内容(无论是 JWT 令牌还是类似的),浏览器在每次请求时将其原封不动地发送到后端。决定令牌是否有效的是后端,前端无权访问它。否则,您放在页面中的亚马逊小横幅也可能会阅读并窃取您的会话
    • 前面可以通过调用后面的视图(通常是用户配置文件摘要)来知道它是否被记录(令牌有效且未过期)。如果它回答 403 你没有登录,如果它回答 200 你是。
    猜你喜欢
    • 2020-04-03
    • 1970-01-01
    • 2018-08-29
    • 2018-10-20
    • 1970-01-01
    • 1970-01-01
    • 2021-07-04
    • 2018-07-17
    • 2021-09-16
    相关资源
    最近更新 更多