gpt4 book ai didi

.net - request.GetResponse() 在头最后修改包含 "Fri, 20 Nov 2009 15:53:16 E. Australia Standard Time"时给出 ProtocolViolationException

转载 作者:可可西里 更新时间:2023-11-01 17:04:12 24 4
gpt4 key购买 nike

Q1 - 这是 .net 中的错误,还是我用于测试的网络服务器 (Mongoose) 没有以应有的格式提供 header 字段 Last-Modified?

  • 如果我在 C# VS2008 中调用:
    response = (HttpWebResponse)request.GetResponse();
    Console.Out.WriteLine("- LM = "+ response.LastModified);

  • 我得到:ProtocolViolationException: header 中日期字符串的值无效

  • 当我使用 HTTPLiveHeaders 查看最后修改的 HTTP 头时,我看到:

    最后修改时间:2009 年 11 月 20 日星期五 15:53:16 E. 澳大利亚标准时间

Q2 - 关于如何处理的任何建议,以便我依赖于使用 Mongoose 服务器的单元测试不会出现此问题?

问题 3 - 任何人都知道这是否经常发生在生产互联网 Web 服务器上?也就是说,我是否应该假设某些网络服务器会以 .net 会拒绝的另一种格式返回 Last-Modified 字段?

最佳答案

实际上,除了 GMT 以外的任何时间都是无效的:

“所有 HTTP 日期/时间戳都必须以格林威治标准时间 (GMT) 表示,无一异常(exception)。” (参见 RFC 2616, Section 3.3.1, Paragraph 5)

关于.net - request.GetResponse() 在头最后修改包含 "Fri, 20 Nov 2009 15:53:16 E. Australia Standard Time"时给出 ProtocolViolationException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1785787/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com