为什么 IIS 不支持分块传输编码?

2024-01-02

我正在与 IIS Web 服务器建立 HTTP 连接,并使用使用 Transfer-Encoding: chunked 编码的数据发送 POST 请求。当我这样做时,IIS 只是关闭连接,没有错误消息或状态代码。根据HTTP 1.1 规范 https://www.rfc-editor.org/rfc/rfc2616#section-3.6.1,

所有 HTTP/1.1 应用程序必须能够接收和解码“分块”传输编码

所以我不明白为什么它(a)不处理该编码,(b)它不发回状态代码。如果我更改请求以发送内容长度而不是传输编码,则查询会成功,但这并不总是可能的。

当我对 Apache 尝试同样的操作时,我收到“需要 411 长度”状态和一条消息“禁止分块传输编码”。

为什么这些服务器不支持这种编码?


看看你的客户。

IIS 和 Apache 都支持使用分块传输编码的 POST 请求。您可以使用以下方法验证这一点卷曲实用程序 http://curl.haxx.se/:

curl <upload-url> --form "upfile=@<local_file>" --header "Transfer-Encoding: chunked"

使用以下命令验证传输是否已分块Wireshark http://www.wireshark.org/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 IIS 不支持分块传输编码? 的相关文章

随机推荐

  • Angular4 为存在且公开提供的 json 数据提供 404

    我有一个用 Angular4 编写的测试数据服务 目前看起来是这样的 import Injectable from angular core import Http from angular http import rxjs add ope
  • 如何右对齐内联块元素?

    正如您在下面的 Fiddle 中看到的 http jsfiddle net EvWc4 3 http jsfiddle net EvWc4 3 我目前正在寻找一种方法将第二个链接 link alt 与其父链接 p 的右侧对齐 为什么不使用浮
  • Facebook 图形 API 速率限制和批量请求

    我见过一些人提到的 600 次调用 600 秒的速率限制 例如quora http www quora com Whats the Facebook Open Graph API rate limit 我想知道我是否可以做600batch
  • Flutter 音频播放器返回错误的播放时间?

    我在用着audioplayers 1 1 0从 url 播放音频的插件 玩得很好 但是player onPositionChanged在特定的秒数之后 它会重新启动 并且计时器从 0 开始 这样我的滑块又从 0 开始了 player onP
  • 启动画面在 PhoneGap Build 中不起作用

    无论是 Android 还是 iOS 我都无法让闪屏正常工作 我正在使用 PhoneGap Build 并且我已经像这样设置了 config xml 现在适用于 v3 0 0
  • 如何从 URI 获取完整文件路径

    我想从 URI 获取完整的文件路径 URI 不是图像 而是音乐文件 但如果我像 MediaStore 解决方案那样执行此操作 则如果应用程序用户选择 Astro 作为浏览器而不是音乐播放器 它将无法工作 我该如何解决这个问题 PathUti
  • 搜索数据库 - ASP.NET MVC C#

    我正在尝试在我的 ASP NET MVC C Linq to Sql 网站中实现完整的搜索功能 该网站由大约 3 4 个表组成 其中包含我想要搜索的大约 1 2 列 这是我到目前为止所拥有的 public List
  • UITableView 自定义节标题,重复问题

    我在为自定义 UITableView 部分标题设置动画时遇到问题 目标是创建可折叠的部分 当我第一次点击自定义标题时 它会按预期进行动画处理 但此后每次它都会在原始位置留下重复项并为另一个进行动画处理 图片示例 My Custom Head
  • 将 NA 值替换为组值

    我有一个 df 如下 有 5 个家庭 20 人 家庭中的某些人缺少关于是否拥有医疗卡的数据 我想为这些人提供与家庭中其他人相同的值 不是 NA 值 而是 0 或 1 的真正二进制值 我已经尝试了以下代码 我认为这是朝着正确方向迈出的一步 但
  • 编译时触发 std::vector 的范围检查

    目标 我想要一个范围检查版本std vector s operator 对于我的调试版本 在发布模式下没有范围检查 调试模式下的范围检查显然有利于调试 但它会导致我的发布代码减慢 5 10 这是我希望避免的 可能的解决方案 我在 Strou
  • 如果单元格自动更新,“编辑”功能将不起作用 - 需要解决方法 Google 表格

    当您手动更改单元格时 此代码将按预期工作 function onEdit event assumes source data in sheet named Prepsheet target sheet of move to named To
  • Android应用程序强制关闭时会发生什么

    我很想知道当应用程序在很长一段时间内没有响应时 当用户单击弹出窗口中的 强制关闭 时会发生什么 哪些事件会被解雇 任务会从托盘中删除吗 我认为当一个活动被强制关闭时 dalvik 将清理应用程序缓存并启动后台堆栈中的最后一个活动 但不确定它
  • XSD 两个具有相同名称但属性值不同的元素

    我正在尝试为以下内容定义 XSD 模板
  • 如何修复 python `dlib` 错误:“在平面命名空间 '_png_do_expand_palette_rgb8_neon' 中找不到符号”?

    我收到错误 symbol not found in flat namespace png do expand palette rgb8 neon 尽管发生了错误dlib正在安装相关 Python 版本的软件包 我正在使用 VSCode 以防
  • 为什么匿名类型不能在方法中传递?

    倾向于不从方法返回匿名类型的设计决策是什么 You can从方法返回匿名类型的实例 但因为您无法命名它 所以您无法准确声明该方法将返回什么 因此您必须声明它只返回object 这意味着调用者将无法对属性等进行静态类型访问 尽管他们仍然可以传
  • Qt/C++:如何获取远程PC(通信对端)MAC地址?

    我在 Windows 7 上使用 Qt5 在我的应用程序中 TCP服务器 我目前正在使用 QTcpSocket 类中的一些方法 QAbstractSocket peerAddress 为了得到对等地址 QAbstractSocket pee
  • 在Entity Framework4中捕获Sql异常?最佳实践是什么?

    您在数据层中使用什么实践来捕获 sql 异常 有人编写了一个通用 Sql 异常处理程序来捕获最常见的错误吗 你是怎么做到的 有什么例子吗 Thanks 仅由底层处理意外异常 数据层 在本例中为实体框架 的异常应仅由业务层处理 然后 业务层可
  • 如何在 TypeScript 中通过导入使用命名空间

    我在两个单独的文件中有两个类 一个从另一个文件扩展 基类包含一些import使用节点模块的语句 我不清楚为什么派生类 位于单独的文件中 无法识别基类 有人可以澄清一下吗 UtilBase ts
  • 如何让 ZK webfragment 与嵌入式 Jetty 9 一起工作?

    这个最小的嵌入式 Jetty 项目可以正确启动 扫描注释并查找并映射带注释的 TestServlet 项目结构 src main java test Test java webapp test zul pom xml 测试 java pac
  • 为什么 IIS 不支持分块传输编码?

    我正在与 IIS Web 服务器建立 HTTP 连接 并使用使用 Transfer Encoding chunked 编码的数据发送 POST 请求 当我这样做时 IIS 只是关闭连接 没有错误消息或状态代码 根据HTTP 1 1 规范 h