如果我发送一个HTTP GET请求,我收到在GET响应?

这可能是一个非常基本的问题,所以请原谅我的无知

服务器使用哪种方法来响应所获得的请求?

我正在做一个networking应用程序,并有一个特定的路线,返回一个大的(如.iso图像)文件。 所以当用户点击一个下载button时,我会让JavaScript用{method: "GET"}请求URL。

当HTTP方法服务器用来发送文件的时候,在用户的机器上下载什么时候?

我很困惑:

  • 如何处理服务器上传用户下载?
  • 它是否默认为大型文件的POST?
  • 作为一名程序员,我如何确保为我的最终用户下载容易(可恢复)?

服务器用户响应请求的方法是什么?

HTTP是请求 – 响应协议。 无论使用什么HTTP方法(GET,POST,HEAD等)向服务器发出请求,服务器总是以相同的方式响应(与请求方法无关)。 当然响应的内容根据你的要求而改变。
所以没有像POST或GET响应这样的事情。

如何处理服务器上传用户下载?

将file upload到服务器/服务时,您发送的请求中包含文件本身,HTTP协议build议您应该使用POST请求发送数据。

从服务器下载文件时,服务器将在响应中发送文件。 请求远程文件时,应使用GET请求,因为GET定义为用于检索资源的命令。 而且,发送的数据的types在请求和响应的头部被指定为Content-Type

请注意,您可以使用GET上传文件,将整个文件填充到URL中,或者下载具有POST请求响应的文件。 然而,这些是非标准的应用程序,并有一定的限制(例如限制URL的最大长度),在服务器端处理这些请求还需要更多的工作。

它是否默认为POST大文件?

这应该已经被回答 – 服务器不会发送任何POST或GET,只是响应。

作为程序员,我如何确保为我的最终用户下载容易(可恢复)?

这将取决于所使用的服务器端和客户端技术。 现代浏览器和正确configuration的Web服务器通常可以自动恢复现有文件的下载。 但是,如果您在服务器上手动构build文件响应,则还需要手动处理下载恢复。 看到这个答案用PHP实现。

GETPOST是客户端的请求方法。 看比较 。

  • GET – 从指定资源请求数据。 查询string(名称/值对)在GET请求的URL中发送。
  • POST – 将要处理的数据提交给指定的资源。 查询string(名称/值对)在POST请求的HTTP消息正文中发送。

该方法不会从请求变为响应。 响应头文件甚至没有提到这个方法。 (来自这个HTTP基础知识文章的例子。)

 HTTP/1.1 200 OK Date: Sun, 18 Oct 2009 08:56:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Sat, 20 Nov 2004 07:16:26 GMT ETag: "10000000565a5-2c-3e94b66c2e680" Accept-Ranges: bytes Content-Length: 44 Connection: close Content-Type: text/html X-Pad: avoid browser bug <html><body><h1>It works!</h1></body></html> 

在这里, Content-Type头部在确定客户端应该如何处理内容方面发挥更大的作用。