gpt4 book ai didi

php - 支持 HTTP 100 继续使用 PHP

转载 作者:行者123 更新时间:2023-12-02 22:50:12 24 4
gpt4 key购买 nike

我正在开发一个 PHP Web 应用程序,它接受来自特定客户端的大型 POST 文件上传,并希望在使用 HTTP 上传文件之前接受或拒绝这些上传(基于各种 header 和其他因素,而不仅仅是大小)/1.1 100 继续。

来自 HTTP/1.1 spec 8.2.3 的一些快速背景知识:

The purpose of the 100 (Continue) status (see section 10.1.1) is to allow a client that is sending a request message with a request body to determine if the origin server is willing to accept the request (based on the request headers) before the client sends the request body. In some cases, it might either be inappropriate or highly inefficient for the client to send the body if the server will reject the message without looking at the body.

问题是 Apache 从客户端看到 Expect: 100-continue,返回 100 Continue 并在 PHP 开始处理之前接受所有文件上传...但是我需要 PHP 在 Expect: 100- 之后立即开始处理继续。我不确定这是否可行,所以我有两个问题:

  1. 是否可以让 PHP 在 Expect: 100-continue 之后立即开始处理?
  2. 如果没有,什么是好的替代方案?

我目前正在考虑通过指定客户端首先发送一个与 POST 具有相同 header 的 HEAD 请求来模拟 100 continue。然后,Web 应用程序可以返回继续 POST 的响应或错误代码。欢迎其他建议!

最佳答案

不幸的是,我认为这是不可能的。如果这是一个真正的要求,我认为最好只是看看其他语言。我认为今天的异构环境比编写这个问题时更常见,所以为什么不创建一个用其他语言编写的仅处理上传的小型服务。

但是,PHP 的工作方式是,脚本仅在客户端发送整个请求时启动。

关于php - 支持 HTTP 100 继续使用 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2253543/

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