问题标签 [http]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
19582 浏览

http - 是否可以删除子域 cookie?

如果为子域 metric.foo.com 设置了 cookie,我有没有办法在请求 www.foo.com 时删除 metric.foo.com cookie?浏览器(至少是 Firefox)似乎忽略了域为 metric.foo.com 的 Set-Cookie。

0 投票
11 回答
135920 浏览

web-services - 监控 HTTP、TCP 等 Web 服务流量的工具

您用来监控网络服务、SOAP、WCF 等来来往往的流量的最佳工具是什么?我见过一些用 Java 制作的工具,但它们似乎有点蹩脚。我想要的是一个作为代理位于中间并进行端口重定向的工具(它应该具有可配置的监听/重定向端口)。是否有任何工具可以在 Windows 上执行此操作?

0 投票
11 回答
18766 浏览

http - 如何检测用于访问我的网站的浏览器?

如何检测用户访问我的网站时使用的浏览器(IE、Firefox、Opera)?Javascript、PHP、ASP、Python、JSP 以及您能想到的任何其他示例都会有所帮助。是否有一种与语言无关的方式来获取这些信息?

0 投票
4 回答
58811 浏览

c# - 如何从 http 标头获取文件大小

我想在下载之前获取 http:/.../file 的大小。该文件可以是网页、图像或媒体文件。这可以用 HTTP 标头完成吗?如何仅下载文件 HTTP 标头?

0 投票
2 回答
7633 浏览

c# - C#下载HTTP目录下的所有文件

如何下载 HTTP 服务器上一个目录和所有子目录中的所有文件?

0 投票
18 回答
208069 浏览

php - 如何在 PHP 中发出异步 HTTP 请求

PHP中有没有办法进行异步HTTP调用?我不关心响应,我只想做类似的事情file_get_contents(),但在执行我的其余代码之前不要等待请求完成。这对于在我的应用程序中触发某种“事件”或触发长流程非常有用。

有任何想法吗?

0 投票
7 回答
63694 浏览

c# - C# HttpWebRequest 命令获取目录列表

我需要一个简短的代码片段来从 HTTP 服务器获取目录列表。

谢谢

0 投票
2 回答
3832 浏览

http - 重定向到同一个 URL 是否安全?

我有形式的 URL http://domain/image/⟨uuid⟩/42x42/some_name.png。Web 服务器 (nginx) 配置为查找文件/some/path/image/⟨uuid⟩/thumbnail_42x42.png,如果文件不存在,则将 URL 发送到后端(Django 通过 mod_wsgi),然后生成缩略图。然后后端发出 302 重定向到客户端请求的完全相同的 URL,其想法是在第二次请求时服务器会注意到缩略图文件并直接发送它。

问题是,这适用于所有浏览器吗?到目前为止,测试显示没有问题,但我可以确定所有用户代理都会按预期解释吗?

更新:让我澄清一下意图。目前这工作如下:

  1. 客户端请求图像的缩略图。
  2. 服务器看到文件不存在,所以将请求转发到后端。
  3. 后端创建缩略图并返回 302。
  4. 后端释放所有资源,让服务器将新生成的文件共享给当前和后续客户端。

让后端服务于新创建的图像更糟糕,原因有两个:

  1. 必须创建两种提供相同数据的方式;
  2. 服务器在提供静态内容方面要好得多。如果客户端的链接非常慢怎么办?后端不是特别快,内存效率也不是特别高,在给客户端喂食的同时将其保存在内存中可能是一种浪费。

所以我让后端工作的时间最短。

更新²:我非常感谢有大量浏览器经验的人的一些 RFC 参考或意见。所有这些肯定的答案都令人愉快,但它们看起来有些毫无根据。

0 投票
1 回答
3724 浏览

http - 如何让 Wget 处理 HTTP 100-Continue 响应?

我正在尝试使用Wget将 HTML(包含在文件中)发布到 URL,如下所示:

HTML 发布到的 URL 是使用 ASP.NET 实现的 Web 应用程序端点。服务器回复100(继续)响应,Wget 只是停止在其轨道上,而不是继续接下来应该遵循的真正响应。

是否可以以某种方式告诉 Wget 处理 100(继续)响应,或者这是该工具的一些众所周知的限制?

笔记:

  • 我注意到 Wget 从不发送Expect: 100-Continue标头,因此从技术上讲,服务器不应发出 100(继续)响应。

    更新: 根据 RFC 2616(超文本传输​​协议 -- HTTP/1.1)的第 8.2.3 节,看起来这是可能的:

    如果请求消息不包含具有“100-继续”期望的 Expect 请求头字段,则源服务器不应发送 100(继续)响应,并且如果此类请求来自HTTP/1.0(或更早版本)客户端。此规则有一个例外:为了与 RFC 2068 兼容,服务器可以发送 100(继续)状态以响应 HTTP/1.1 PUT 或 POST 请求,该请求不包含带有“100-继续”的期待。此异常的目的是最大限度地减少与未声明的等待 100(继续)状态相关的任何客户端处理延迟,仅适用于 HTTP/1.1 请求,不适用于具有任何其他 HTTP 版本值的请求。

  • cURL对这样的事务没有任何问题。它发送一个Expect: 100-Continue标头并继续对真实的 100(继续)响应。

有关更多信息,以下是来自上面显示的调用的事务的完整调试跟踪:

0 投票
4 回答
9764 浏览

http - 为 REST 请求禁用 Jetty 服务器的客户端缓存

我有一个 REST Java 服务器,使用在 Jetty 上运行的 Jersey 实现。似乎某些浏览器(IE7)在内部缓存了对服务器的所有请求。

我想做的是在来自 REST 服务器的响应中发送某个 HTTP 标头,指示浏览器它不应该缓存该响应,因此下次它需要访问该资源时将再次查询服务器。

关于如何为此配置 Jersey/Jetty 的任何想法?或者配置它的唯一方法是客户端?