【问题标题】:What is "Session/Cookie Transport"?什么是“会话/Cookie 传输”?
【发布时间】:2018-11-03 14:00:49
【问题描述】:

我正在使用 ArangoDB 构建应用程序。
在手册中,它说有一种叫做 Cookie 传输和会话传输的东西。 https://docs.arangodb.com/3.0/Manual/Foxx/Sessions/Transports/Cookie.html

似乎这些与 cookie 和会话等效,就像您使用 express-session 模块获得的一样。 但是,我无法理解:
1. 为什么这些东西被称为“运输”?
2. Cookie 传输和 cookie 一样吗?
我在 nginx 后面使用 elixir/phoenix 和其他网络服务器,这些服务器必须能够访问 cookie。

【问题讨论】:

    标签: cookies arangodb foxx


    【解决方案1】:

    Transport 是一种对象。您可以像这样创建这样的对象:

    // use cookie based session
    const cookieTransport = require('@arangodb/foxx/sessions/transports/cookie');
    const myTransport = cookieTransport( ... );
    
    // -OR-
    
    // use header based session
    const headerTransport = require('@arangodb/foxx/sessions/transports/header');
    const myTransport = headerTransport( ... );
    

    您可以像这样使用 Transport 对象 myTransport

    sessionsMiddleware({ ..., transport: myTransport });
    

    详情请见https://docs.arangodb.com/3.3/Manual/Foxx/Sessions/

    您还可以将多个传输对象作为数组传递给会话中间件。如果您不想更改任何默认值,可以传递 transport: ['header', 'cookie'] 以支持 cookie 以及基于标头的会话传输。

    传输定义了如何在客户端处理会话 ID,是否应该使用 cookie 或 HTTP 标头或两者都用于将会话 ID 传输到服务器。

    【讨论】:

      猜你喜欢
      • 2011-10-27
      • 2011-01-17
      • 2011-01-10
      • 2019-10-31
      • 2012-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多