gpt4 book ai didi

ajax - 是或否 : Can a server send an HTTP response,,同时仍从相关 HTTP 请求上传文件?

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

如果网站用户使用以下方式提交 HTML 表单: (1) post 方法; (2) 多部分/表单数据编码类型; (3) 附件很大,服务器是否可以上传发布的文件,并在文件上传完成之前发送服务器生成的 HTTP 响应,而不使用 AJAX?

这相当密集。因此,我写了一个例子来说明我的意思。假设有一个带有标题字段的图像上传表单。

  <form action="upload-with-caption/" method="post" enctype="multipart/form-data">
<input type="hidden" id="hiddenInfo" name="hiddenInfo" />
File: <input type="file" name="imgFile" id="imgFile" /><br />
Caption: <input type="text" name="caption" id="caption" />
<input type="submit" />
</form>

我想将标题存储在具有定义的数据库表中:

[文件表]

  • file_id [唯一标识符]
  • file_caption [varchar(500)]
  • 文件状态 [int]

然后我想将文件上传到/root/{unique-id}/filename.ext

file_status 映射到具有以下定义的 C# 枚举:

enum  FileUploadStatus{
Error = 0,
Uploading = 1,
Uploaded = 2
}

当表单提交时,如果文件太大而无法在 1 秒内处理,我想向网页发回一个响应,说明当前正在上传。

我可以通过单个同步 HTTP post 来完成此操作吗?

注意:我显然想稍后使用 AJAX 检查状态更新,但这不是这个问题所要问的。我特意询问回复发送后是否可以继续上传文件。

最佳答案

HTTP 是一种同步协议(protocol)。
在收到整个请求之前,您无法发送响应。

关于ajax - 是或否 : Can a server send an HTTP response,,同时仍从相关 HTTP 请求上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4796470/

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