如何在Asp.net Core MVC(又名Asp.Net 5 RC1)中检查响应cookie?

罗恩C

我正在将Web窗体应用程序转换为asp.net核心mvc。在我的Web窗体应用程序中,有时在设置一些响应cookie之后,其他代码需要查看是否已设置它们,如果是,则访问cookie的属性(即,值,Expires,Secure,http)。在Webforms和MVC 5中,可以遍历cookie并返回任何特定的cookie,就像这样(我知道是老派)

       for(int i = 0; i < cookies.Count; i++) {
            if(cookies[i].Name == cookieName) {
                return cookies[i];
            }
        }

但是在asp.net core mvc中访问响应cookie的界面看起来像这样:

响应cookie界面

基于此接口,我没有找到检查响应cookie是否存在并获取其属性的方法。但是必须有某种方法可以做到吗?

在一种操作方法中,我尝试在响应对象上设置两个cookie,然后立即尝试访问它们。但是intellisense没有显示任何允许我访问它们的方法,属性或索引器:

在此处输入图片说明

有一会儿,我以为也许可以使用Response.Cookies.ToString();并解析该信息以查找我的cookie信息,但是,该ToString()调用返回“ Microsoft.AspNet.Http.Internal.ResponseCookies”,因为该对象未覆盖默认实现。

只是为了好玩,我还检查了GitHub当前的dev分支,以查看自RC1起接口是否已更改,但接口没有更改。因此,给定此接口后,如何检查响应cookie的存在并获取其属性?我曾考虑过尝试通过响应标头集合进行入侵,但这似乎很la脚。

树与叶

这是我value从响应中获取Cookie的方法。如果需要,可以使用类似这样的方法来获取整个cookie:

string GetCookieValueFromResponse(HttpResponse response, string cookieName)
{
  foreach (var headers in response.Headers.Values)
    foreach (var header in headers)
      if (header.StartsWith($"{cookieName}="))
      {
        var p1 = header.IndexOf('=');
        var p2 = header.IndexOf(';');
        return header.Substring(p1 + 1, p2 - p1 - 1);
      }
  return null;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Asp.Net Core MVC 1.0(aka MVC 6 RC1)中访问会话超时值?

来自分类Dev

如何在Asp.net Core rc1中的静态方法中使用DI

来自分类Dev

如何在ASP.NET 5 RC1 MVC中使用IFormFile保存上传的文件

来自分类Dev

ASP.NET MVC 6(ASP.NET Core或ASP.NET5)中的友好URL

来自分类Dev

Asp.Net Core 1.0(又名Asp.Net 5)网站是否随着文件更改而刷新?

来自分类Dev

如何在ASP.NET 5 MVC中访问缓存?

来自分类Dev

如何在ASP.NET MVC 6(ASP.NET Core)中获取returnUrl AccessDeniedPath

来自分类Dev

ASP.NET Core社交登录RC1

来自分类Dev

如何在ASP.NET Core中设置cookie validateInterval?

来自分类Dev

Microsoft Asp.Net 5 RC1

来自分类Dev

如何在ASP.NET Core 5中添加身份服务

来自分类Dev

如何在ASP.NET Core 5中使用FromSqlRaw删除记录?

来自分类Dev

ASP.Net MVC 5中的Cookie

来自分类Dev

如何在 Internet Explorer 11 上运行 Angular 5 asp.net core MVC

来自分类Dev

ASP.Net Core RC1:System.ArgumentException:路径中的非法字符

来自分类Dev

如何在asp.net 5中设置Auth cookie

来自分类Dev

动态编译在ASP.NET 5 RC1中仍然不起作用?

来自分类Dev

类型“异常”是在ASP.NET 5 RC1中未引用的程序集中定义的

来自分类Dev

Asp.Net 5(核心)RC1:如何记录到文件(滚动文件记录)[DNX Core 5兼容解决方案]?

来自分类Dev

如何使用ASP.NET Core RC1中的Facebook提供程序获取其他字段?

来自分类Dev

如何在Asp.net Core中缓存资源?

来自分类Dev

如何在ASP .NET Core中创建Azure AD用户?

来自分类Dev

如何在ASP.NET Core中获取IIS版本

来自分类Dev

如何在ASP.NET Core 3.0中调用UseWebRoot

来自分类Dev

如何在ASP .NET Core 3.1中设置请求超时

来自分类Dev

如何在ASP.NET Core中设置默认区域?

来自分类Dev

如何在ASP .NET Core中创建Azure AD用户?

来自分类Dev

如何在 asp.net core 中创建类扩展?

来自分类Dev

maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

Related 相关文章

  1. 1

    如何在Asp.Net Core MVC 1.0(aka MVC 6 RC1)中访问会话超时值?

  2. 2

    如何在Asp.net Core rc1中的静态方法中使用DI

  3. 3

    如何在ASP.NET 5 RC1 MVC中使用IFormFile保存上传的文件

  4. 4

    ASP.NET MVC 6(ASP.NET Core或ASP.NET5)中的友好URL

  5. 5

    Asp.Net Core 1.0(又名Asp.Net 5)网站是否随着文件更改而刷新?

  6. 6

    如何在ASP.NET 5 MVC中访问缓存?

  7. 7

    如何在ASP.NET MVC 6(ASP.NET Core)中获取returnUrl AccessDeniedPath

  8. 8

    ASP.NET Core社交登录RC1

  9. 9

    如何在ASP.NET Core中设置cookie validateInterval?

  10. 10

    Microsoft Asp.Net 5 RC1

  11. 11

    如何在ASP.NET Core 5中添加身份服务

  12. 12

    如何在ASP.NET Core 5中使用FromSqlRaw删除记录?

  13. 13

    ASP.Net MVC 5中的Cookie

  14. 14

    如何在 Internet Explorer 11 上运行 Angular 5 asp.net core MVC

  15. 15

    ASP.Net Core RC1:System.ArgumentException:路径中的非法字符

  16. 16

    如何在asp.net 5中设置Auth cookie

  17. 17

    动态编译在ASP.NET 5 RC1中仍然不起作用?

  18. 18

    类型“异常”是在ASP.NET 5 RC1中未引用的程序集中定义的

  19. 19

    Asp.Net 5(核心)RC1:如何记录到文件(滚动文件记录)[DNX Core 5兼容解决方案]?

  20. 20

    如何使用ASP.NET Core RC1中的Facebook提供程序获取其他字段?

  21. 21

    如何在Asp.net Core中缓存资源?

  22. 22

    如何在ASP .NET Core中创建Azure AD用户?

  23. 23

    如何在ASP.NET Core中获取IIS版本

  24. 24

    如何在ASP.NET Core 3.0中调用UseWebRoot

  25. 25

    如何在ASP .NET Core 3.1中设置请求超时

  26. 26

    如何在ASP.NET Core中设置默认区域?

  27. 27

    如何在ASP .NET Core中创建Azure AD用户?

  28. 28

    如何在 asp.net core 中创建类扩展?

  29. 29

    maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

热门标签

归档