php - Cookie 路径特殊字符

标签 php http cookies

我的应用程序需要为应用程序中的特定路径设置 cookie。例如(在 php 中):

setcookie(*cookie_name*,*value*,*date*,"/subpath/subpath/unique_name");
setcookie(*cookie_name*,*value*,*date*,"/subpath/subpath/another unique name");

奇怪的是,第一个 setcookie 工作正常。第二个不会产生错误,当我在 Firefox 中查看我的 cookie 时,cookie 是正确的值。但是,我无法在我的代码中访问它。我相信空格是造成问题的原因,但我还没有找到任何关于如何编码 cookie 路径的文档或规范。

有没有人遇到过这个问题?有谁知道如何处理 cookie 路径中的特殊字符?

最佳答案

我发现 cookie 中的空格没有问题。
也许你应该检查一下你是如何读回你的值(value)的……
我的阅读程序是:

function ReadCookie(name)
{
  name += '=';
  var parts = document.cookie.split(/;\s*/);
  for (var i = 0; i < parts.length; i++)
  {
    var part = parts[i];
    if (part.indexOf(name) == 0)
      return part.substring(name.length)
  }
  return null;
}

显然,您唯一需要编码的是分号。

关于php - Cookie 路径特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/338267/

相关文章:

javascript - mysql 查询返回 false,mysql 插入有效但回显语句不显示

php - 代码点火器。如何获取数据库列的总和

java - 使用 Wicket 作为 REST API

javascript - Angular 1.5.4 $http 进度事件

javascript - JQuery Cookie 不起作用

php - 在 codeigniter Active Record 中执行和不执行之前的回显查询

php - 当大量数据被POST到一个超过1 mb的php文件时,将出现500 Internal Server Error

添加构造函数时,Angular Component 不呈现 html

java - 微服务中的 session 管理

Laravel 5.4 - Cookie 队列