问题标签 [http-protocols]
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.
node.js - 随机名称 HTTP 标头开头的四个空格字符
我发现了一个域名(网站和 API),它为每个 HTTP 响应添加了这样的标头:
标题名称看起来是随机的。以下是一些其他示例:
注意前导的 4 个空格。并与其他响应标头进行比较:
主要问题 - 此标头有时是响应中的第一个标头。反过来,这被认为是一个漏洞。
就我而言,它看起来像这样:
引用 HTTP 1.1 的 RFC https://www.rfc-editor.org/rfc/rfc7230#section-3
发件人不得在起始行和第一个标头字段之间发送空格。...
请求中出现此类空格可能是试图诱使服务器忽略该字段或将其后面的行作为新请求处理,如果请求链中的其他实现解释相同,则任何一种都可能导致安全漏洞消息不同。同样,响应中此类空格的存在可能会被某些客户端忽略或导致其他客户端停止解析。
这会导致 node.js 在尝试解析这些 HTTP 响应时抛出错误。错误代码是HPE_INVALID_HEADER_TOKEN
,仅当 HTTP 标头格式错误时才抛出。
问题:它是什么?谁在做?为什么?
java - 如何使用 http 协议获取特定于角色的不记名令牌
我正在尝试自动化作为门户 UI 解决方案的一部分实现的 API。这里授权发生在角色级别。在 UI 中,角色是通过选择角色的单选按钮之一并单击登录来决定的。我可以手动从网络选项卡中获取角色的不记名令牌。如果我尝试自动化 API,则需要不记名令牌。我正在使用 http 协议来自动化。问题是我的 JWT 不记名令牌仅在 3 小时内有效。这最终迫使我在每次执行期间都使用新的不记名令牌,因为我将把它与 CI 集成。 如何在使用 http 协议访问 API 之前获取 Bearer 令牌?
git - Git:通过 HTTP(s) 协议确认给定的提交是否存在
我们使用 git http(s) 协议(https://www.git-scm.com/docs/http-protocol;智能服务)从 GitHub 或 BitBucket 上的存储库中获取所有分支,如下所示:
响应为我们提供了给定存储库中所有分支的列表。
现在我们需要确认给定的提交是否存在于特定的分支中。如果我们可以通过 git http 协议获取给定分支的提交列表,那就太好了。如何指定此类请求?非常感谢您的帮助!
c++ - 如何使用 C++ 通过 HTTP 协议上传文件?
我将使用 C++ 将文件上传到 Java Spring Boot Web 服务器。
我构建的协议如下所示(纯文本):
服务器端是Java spring boot server,接口定义如下:
发布文件时,服务器以代码 400 响应,并抱怨
所需的请求部分“文件”不存在
但是对于一个简单的 HTML 页面,文件上传成功,HTML 页面如下:
我想念什么?
编辑:
我试过 Postman/Chrome 控制台/curl,所有这些工具只打印请求,如下所示:
我应该如何构建文件部分?有任何想法吗?
python - 在 NodeJS 中连接到 websocket 时出现协议错误
所以我已经成功地从 python 中的一个开源目录运行了这段代码,但是我试图将它转换为我的 NodeJS 应用程序的 JavaScript,并且当我尝试运行代码时遇到以下输出问题。
这是我的代码:标头 JSON
其余代码:
所以正如我所说,我让它在 python 中成功运行,但我更愿意在我的 NodeJS 应用程序中运行它,因为这是我的其余代码运行的地方,我不想运行 2 个不同的服务器。
c# - 在我的 UWP 应用程序中打开来自 Windows 的所有 http 链接
我正在制作一个 UWP 应用程序,它会打开在 Windows 中单击的所有 http/https 协议链接。简而言之,它的行为与默认浏览器相同。
我使用以下内容与 http/https 协议相关联
以及处理发射的方法protected override void OnActivated(IActivatedEventArgs args)
该应用程序编译良好。我将我的应用程序设置为默认打开程序http
,当我尝试Win + R
从系统或系统某处打开链接时,该应用程序会发出File system error (-2147219196)
那么,我现在该怎么办?
http - 当我们有可用的 post 方法并且我们可以使用 post 方法执行相同的工作时,为什么我们使用 put patch delete?
我们甚至可以使用 POST 请求更新或删除数据,那么为什么我们要使用 DELETE 删除资源并使用 PUT/PATCH 更新资源?
python - 从 url 派生协议
我确实有一个 URL 列表,例如["www.bol.com ","www.dopper.com"]
格式。为了在 scrappy 上作为起始 URL 输入,我需要知道正确的 HTTP 协议。
例如:
如您所见,协议可能会有所不同,https
甚至http
有或没有www.
不确定是否有任何其他变化。
- 有没有可以确定正确协议的python工具?
- 如果不是,我必须自己构建逻辑,我应该考虑哪些情况?
对于选项 2,这是我目前所拥有的:
还有其他我应该考虑的可能性吗?
http - Content-Security-Policy 标头是否仅适用于 text/html Content-Type?
从 OWASP 的网站 https://cheatsheetseries.owasp.org/cheatsheets/Content_Security_Policy_Cheat_Sheet.html:
从您的 Web 服务器发送 Content-Security-Policy HTTP 响应标头。
内容安全策略:...
使用标头是首选方式,并且支持完整的 CSP 功能集。在所有 HTTP 响应中发送它,而不仅仅是索引页面。
我不明白这怎么可能是真的,因为可以通过在 HTML 中使用元标记来设置 Content-Security-Policy。我也看不出该政策如何适用于 HTML 页面以外的任何其他内容。
有谁知道为什么要做出上述声明以及仅发送 HTTP 标头Content-Security-Policy
进行text/html
响应是否安全?
顺便说一句,策略太大了,我想发送尽可能少的字节。
python - Pyhton - 使用类(带模拟)为异步方法创建测试
我想为 get_job_details 函数创建模拟测试(使用 async & Class & 方法):
我当然不想真正调用这个函数,而是创建模拟。我可以为未在构造函数上初始化的类创建模拟吗?有关于如何做正确的建议吗?