2.3. 验证会话

API 同时提供了对验证会话的支持。API 用户在初始请求中包括验证信息,并使用一个会话 cookie 为其后的请求提供验证信息。以下介绍了使用验证会话的过程。

过程 2.3. 请求一个验证会话

  1. 发送带有 AuthorizationPrefer: persistent-auth 的请求
    HEAD [base] HTTP/1.1
    Host: [host]
    Authorization: Basic cmhldm1hZG1pbkBibGFjay5xdW1yYW5ldC5jb206MTIzNDU2
    Prefer: persistent-auth
    
    HTTP/1.1 200 OK
    ...
    
    这会返回带有以下头数据的响应:
    Set-Cookie: JSESSIONID=5dQja5ubr4yvI2MM2z+LZxrK; Path=/api; Secure
    
    记录 JSESSIONID= 的值。在这个例子中,它的值是 JSESSIONID=5dQja5ubr4yvI2MM2z+LZxrK
  2. 在随后的所有请求中包括带有 Prefer: persistent-authcookie(包括 JSESSIONID= 的值) 的头。使用验证会话将不再需要 Authorization
    HEAD [base] HTTP/1.1
    Host: [host]
    Prefer: persistent-auth
    cookie: JSESSIONID=5dQja5ubr4yvI2MM2z+LZxrK
    
    HTTP/1.1 200 OK
    ...
    
  3. 当不再需要会话时,执行一个没有 Prefer: persistent-auth 头的请求。
    HEAD [base] HTTP/1.1
    Host: [host]
    Authorization: Basic cmhldm1hZG1pbkBibGFjay5xdW1yYW5ldC5jb206MTIzNDU2
    
    HTTP/1.1 200 OK
    ...