java - 单独的 cookie 设置是否优先于 web.config 中的设置?

标签 java php .net cookies

假设我的 web.config 中的适当位置有以下内容:

<httpCookies requireSSL="true" />

默认情况下,这会将所有 httpCookie 设置为安全。如果我有以下 cookie:

var cookie = new HttpCookie("ResultsPerPage", "50");
cookie.Secure = false;
Response.Cookies.Add(cookie);
  1. 此 cookie 的安全设置为 True 还是 False?
  2. 如果我们尝试以这种方式设置 HttpOnly,这也适用吗?
  3. 反之亦然(requireSSL = "false"cookie.Secure=true)吗?
  4. 以上方法适用于.NET,但您也可以在PHP和Java中设置cookie。如果我对 Java 和 PHP 使用类似的方法(web.xml/inline 或 php.ini/在脚本中),结果与 .NET 中的结果相同吗?

最佳答案

使用浏览器的开发控制台检查 HTTP 响应 header 和 cookie 可以让您深入了解这一点。为了回答这个问题,我使用了 ASP.Net 和 Chrome 浏览器。回答您的问题 - 是的,单独的 cookie 设置确实优先于 web.config 设置。

像这样设置配置 -

<httpCookies requireSSL="true" httpOnlyCookies="true"/>

结果是这样的响应 header -

response header config

还有像这样的cookie -

cookies config

在代码中设置各个 cookie 的首选项,如下所示 -

var cookie = new HttpCookie("ResultsPerPage", "50");
cookie.Secure = false;
cookie.HttpOnly = false;
HttpContext.Response.Cookies.Add(cookie);

将产生这样的响应 header -

response header code

还有像这样的cookie -

cookie code

您可以通过检查 cookie 和响应 header 来验证 java 和 php 是否具有相同的行为。

希望这有帮助。

关于java - 单独的 cookie 设置是否优先于 web.config 中的设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23756984/

相关文章:

java 日历 setFirstDayOfWeek 不工作

java - 嵌套for循环优化

PHPmyadmin 在访问任何数据库时永远升级/加载

php - 试图查询两个表,但我不知道如何查询

java - servlet doGet 和 doPost 方法

java - 使用 Spring 时数据未发送到 MySQL 数据库

php - Symfony2 Doctrine 查询生成器作为 FROM 子句中的子查询

c# - 如何将构建属性传递给 dotnet?

C# tcp 套接字如何判断正在发送的对象类型?

c# - 多线程时进度条不显示正确的值