Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Http 路径/a/b/c处设置的cookie的默认cookie路径是什么?_Http_Cookies - Fatal编程技术网

Http 路径/a/b/c处设置的cookie的默认cookie路径是什么?

Http 路径/a/b/c处设置的cookie的默认cookie路径是什么?,http,cookies,Http,Cookies,RFC 6265提供了以下内容,用于在不存在路径属性的情况下计算cookie应适用的默认路径: 用户代理必须使用与以下等效的算法 计算cookie默认路径的算法: 如果存在这样的问题,则将uri path设为请求uri的路径部分 部分存在(否则为空)。例如,如果 请求uri只包含一个路径(和可选的查询字符串), 那么uri路径就是该路径(不带%x3F(“?”)字符) 或查询字符串),以及请求uri是否包含完整的 绝对uri,uri路径是该uri的路径组件 如果uri路径为空,或者如果uri的第

RFC 6265提供了以下内容,用于在不存在
路径
属性的情况下计算cookie应适用的默认路径:

用户代理必须使用与以下等效的算法 计算cookie默认路径的算法:

  • 如果存在这样的问题,则将uri path设为请求uri的路径部分 部分存在(否则为空)。例如,如果 请求uri只包含一个路径(和可选的查询字符串), 那么uri路径就是该路径(不带%x3F(“?”)字符) 或查询字符串),以及请求uri是否包含完整的 绝对uri,uri路径是该uri的路径组件

  • 如果uri路径为空,或者如果uri的第一个字符- 路径不是%x2F(“/”)字符,输出%x2F(“/”)并跳过 剩下的步骤

  • 如果uri路径包含不超过一个%x2F(“/”)字符, 输出%x2F(“/”)并跳过剩余步骤

  • 从第一个字符开始输出uri路径的字符 到但不包括最右边的%x2F(“/”)

  • 让我们以从
    https://example.com/a/b/c
    。在这种情况下,
    uripath
    /a/b/c
    。没有尾随斜杠,因此,如果我正确解释规范,“最右边”的斜杠不是在
    c
    之前,因此
    cookie路径是
    /a/b

    另一种询问方式是,如果符合规范的现代浏览器从
    https://example.com/a/b/c
    ,该cookie是否应在后续请求中发送到
    https://example.com/a/b

    没有尾随斜杠,因此,如果我正确解释规范,“最右边”的斜杠不是在c之前的斜杠吗,因此cookie路径是a/b

    差不多。从1开始,
    uri路径
    将是
    /a/b/c
    。2和3不适用。从4开始,输出将是
    /a/b
    ,包括前导的
    /

    另一种询问方式是,一个符合规范的现代浏览器是否收到cookie

    如果你指的是实际的浏览器,这不是完全相同的问题;你找到不同的解释了吗

    与规范仍有分歧,像这样的资源可能是确认现代浏览器行为的更好资源

    但是,要回答规范方面的问题:

    接收到一个没有路径属性的cookie ... 从,该cookie是否应在后续请求中发送到

    是的,因为5.1.4中的算法意味着cookie的
    默认路径是
    /a/b
    ,并且该路径匹配
    /a/b
    ,因为

    cookie路径和请求路径相同


    谢谢只是一点背景知识。我有一本相当受欢迎的书。它在预发行版中有一些关于cookies的新特性。几个月前,我发表评论说,我怀疑他有一部分弄错了。没有回音,假设我误解了规范,按照他的答案实现,现在我让我重新思考这一切!归根结底,“最右边的/”是否意味着它必须在字符串的末尾。我不是这样理解的,很高兴找到一个同意的人。