当文件仅被部分上传时,PHP 可以生成UPLOAD_ERR_PARTIAL
错误,并且我不确定在这种情况下应该使用哪个HTTP状态码。
如果用户取消上传(请参见为什么文件只能部分上传和php.net上的文件上传错误),通常会发生这种情况。
如果在文件数据后未找到 MIME 边界,则会给出 UPLOAD_ERR_PARTIAL。可能的原因是用户取消了上传(按 ESC 等)。
当文件仅被部分上传时,PHP 可以生成UPLOAD_ERR_PARTIAL
错误,并且我不确定在这种情况下应该使用哪个HTTP状态码。
如果用户取消上传(请参见为什么文件只能部分上传和php.net上的文件上传错误),通常会发生这种情况。
如果在文件数据后未找到 MIME 边界,则会给出 UPLOAD_ERR_PARTIAL。可能的原因是用户取消了上传(按 ESC 等)。
针对这种情况,您应该使用 409 状态码。
根据http://www.ietf.org/rfc/rfc2616.txt:
由于资源的当前状态与请求存在冲突,无法完成请求。只有在预期用户可能解决冲突并重新提交请求的情况下才允许使用此代码。响应正文应包含足够的信息,以便用户识别冲突的来源。理想情况下,响应实体将包含足够的信息,供用户或用户代理修复问题;但这可能是不可能的,并且不是必需的。
400 Bad Request
无需发送任何状态码,因为客户端已经断开连接。
exit();
。 - Pierre当文件数据后未找到mime边界时,会出现UPLOAD_ERR_PARTIAL错误。
需要长度411
该请求未指定其内容的长度,这是所请求资源所必需的。
UPLOAD_ERR_PARTIAL
的情况。 - pconcepcion415
并不是指上传的文件类型不被允许。它是在使用无效的 Content-Type
标头时出现的错误。此外,5xx
错误用于指示服务器端的错误 - 但这是客户端的问题。 - Zaffy我会使用
408 请求超时。 因为它表示请求仅被部分发送(在这种情况下不支持)。
400 错误请求 看起来是另一个选项。
您还可以使用非保留数字创建自己的选项。
但是,如果请求被取消,您将在哪里发送响应?