请求遵循重定向而不发送数据

2024-02-24

我在用着请求.js https://github.com/request/request用于 Node.js 中的 http 请求。

request({
  method: 'POST',
  uri: 'http://www.example.com/getData',
  followAllRedirects: true,
  followOriginalHttpMethod: true,
  json: true,
  form: {
    id: 1,
    msg: 'Test data',
  },
}, (err, res, body) => {})

假设我发帖时{ id: 1, msg: 'Test data' } to http://www.example.com/getData,代理将重定向到http://us.example.com/getData.

上面的代码确实重定向到http://us.example.com/getData, but 如何使用发布数据设置重定向?


这即使不是不可能,也是很难做到的。

如果通过发送“301 Moved Permanently”或“302 Found”HTTP 状态代码来完成重定向,那么实际上它的工作方式就好像发送了“303 See Other”,即获取请求被制作正文中没有发送任何数据.

See HTTP 状态代码列表 https://en.wikipedia.org/wiki/List_of_HTTP_status_codes在维基百科上:

这是行业实践与标准相矛盾的一个例子。 HTTP/1.0 规范 (RFC 1945) 要求客户端执行 临时重定向(最初的描述短语是“已移动 暂时”),但流行的浏览器使用 302 实现 303 的功能请参阅其他。因此,HTTP/1.1增加了状态 代码 303 和 307 来区分这两种行为。 但是,某些 Web 应用程序和框架使用 302 状态代码 就好像它是303一样。

创建了“307 临时重定向”(自 HTTP/1.1 起)来解决此问题不允许更改 HTTP 方法- 所以从 POST 的重定向仍然应该是 POST - 请参阅维基百科:

在这种情况下,应该使用另一个 URI 重复请求; 但是,将来的请求仍应使用原始 URI。在 与历史上 302 的实现方式相比,请求方法 重新发出原始请求时不允许更改。为了 例如,应使用另一个 POST 重复一个 POST 请求 要求。

但在特定情况下这是否有效很难说,因为它取决于您调用的 API,并且需要更改该 API 实现。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

请求遵循重定向而不发送数据 的相关文章

随机推荐

  • 如何观察服务类中的实时数据

    我想将从 API 获得的一些记录插入到我的数据库中 我正在使用服务类来执行此过程 我试图在服务类中使用实时数据的概念 但它要求我的服务类是生命周期所有者 我一直在思考如何让我的服务类观察者实时数据的变化 任何帮助都会很好 如果您的服务不应受
  • Haskell 中类似 OO 的接口实现

    尽管有这个标题 我不会仅仅询问 OO 世界和 Haskell 之间的翻译 但我想不出更好的标题 此讨论类似于但不等于this one https stackoverflow com questions 5474171 oo interfac
  • 按位运算如何提高 Asm.js 的性能?

    在 Asm js 定义的第一行有一个基于 Asm js 的代码示例 它解释了按位运算有助于获得更快的 JS 代码 HEAP32 p gt gt 2 0 or x y 0 我的问题是 这个操作如何提高性能 在 Asm js 或 Emscrip
  • Drools 知识库 已弃用

    我正在将 Drools 规则引擎集成到我的应用程序中 我发现的 99 的入门示例如下 KnowledgeBuilder kbuilder KnowledgeBuilderFactory newKnowledgeBuilder kbuilde
  • 如何验证 WTForms 中的日期字段

    在我的 Flask 应用程序中 我有一个 WTForm 其中有两个日期选择器 分别用于 开始日期 和 结束日期 验证 结束日期 不早于 开始日期 的最佳方法是什么 from flask wtf import FlaskForm from w
  • .NET 自定义事件组织帮助

    作为 C 的新手 我最近一直在研究自定义事件 虽然我认为我现在了解设置自定义事件所需的基本部分 但我无法确定where每件作品都属于 具体来说 这就是我正在尝试做的事情 我有一个表示内部数据结构布局的树控件 当数据在树中重新排列 通过拖放
  • 傅立叶级数数据与 numpy 的拟合:fft 与编码

    假设我有一些数据 y 我想对其进行傅立叶级数拟合 对此post https stackoverflow com questions 4258106 how to calculate a fourier series in numpy 解决方
  • HttpClient 不从 CookieContainer 发送 cookie

    我正在使用 Visual Studio 2012 开发带有 WPF NET 4 0 客户端的 ASP WebAPI ASP MVC 4 应用程序 客户端需要登录到服务器 我使用带有身份验证 cookie 的 FormsAuthenticat
  • MS Access 子表单在表单视图中带有#Error 字段

    微软访问 2003 我在子表单后面有一个查询 其中有如下 sql 语句 SELECT ClientTotalInvoiceLineItems CDate GetWeekEnding WeekEnding1 WeekEnding2 WeekE
  • 使用内容配置作为文件名下载 Node.js 文件

    我正在使用 Request 模块下载文件 但是当文件名必须来自 Content Disposition 标头时 我不太确定如何将响应传输到输出流 所以基本上 我需要读取响应直到找到标头 然后将其余部分通过管道传输到该文件名 这些示例显示如下
  • 检查残差并可视化零膨胀泊松 r

    我正在为 CPUE 数据运行零膨胀模型 该数据有零通货膨胀的证据 我已通过 Vuong 测试 在下面的代码中 确认了这一点 根据 AIC 的说法 完整模型 zint 优于零模型 我现在想要 检查完整模型的残差以确定模型拟合 由于缺乏来自同事
  • Javascript 设置按钮处于活动状态

    我有一个按钮表 一旦填充完毕 我就会使用 document getElementById btn0 click 单击第一个按钮 该按钮正在执行其应该执行的操作 但是按钮的背景颜色并没有像我手动单击它时那样改变 正如您所看到的 当它运行时 d
  • Rails 这个查询是否对 sql 注入开放?

    我仍在学习如何使用 ActiveRecord 编写良好的查询 我很好奇这个查询是否会受到 sql 注入的影响 因为我在查询中使用日期字段的方式 有人可以指出任何明显的错误或任何更好的方法来编写这个查询吗 arrangements for m
  • MEAN.js 社交共享?

    因此 我使用 MEAN js 构建了一个应用程序 并对文章 博客 部分进行了一些更新 以实现更好的 SEO 可读性 设计等 不过 我似乎无法弄清楚的一个问题是如何共享使用 Facebook Google Twitter 等的文章 并让它们使
  • (#5) Heroku Rails APP 上出现未经授权的源 IP 地址错误

    当有人尝试通过 Facebook 登录时 我的 Heroku 应用程序 FoR 开始抛出此错误 5 Unauthorized source IP address 发生这种情况是因为我的 Heroku 机器 与其他应用程序共享 的 IP 地址
  • Silverlight 4.0 + MVC 2.0 + WCF RIA 服务 + EF 4.0 = 加载错误

    我正在尝试建立一个具有以下内容的网站 VS 2010 用于更新的 WCF RIA 服务 Silverlight 4 0 与 WCF RIA 服务打包在一起 MVC 2 EF 4 0 我将其设置为面向公众的页面将是来自 MVC 的 html
  • 配置 Microsoft Azure Web App 的远程 IIS 管理后找不到 Microsoft.Web.Configuration.AppHostFileProvider

    几个月前 我可以成功地为我的 Azure Web 应用程序配置远程 IIS 管理 更换办公室后 我发现在新计算机上配置远程 IIS 管理后 当我尝试单击我的网站时遇到以下错误 我使用 Internet 信息服务 版本 10 0 16299
  • 写入终端和文件 C++

    我发现这个问题适用于 Python Java Linux 脚本 但不适用于 C 我想将 C 程序的所有输出写入终端和输出文件 使用这样的东西 int main freopen myfile txt w stdout cout lt lt L
  • 如何在 HTML 中的 Image-Click 上播放声音?

    当我单击或将鼠标悬停在播放按钮上时 我尝试播放声音吗 这是我到目前为止所拥有的 我有一个按钮 如果我将鼠标悬停在它上面 它会更改图像 现在我还希望它播放 mp3 play a position relative float left wid
  • 请求遵循重定向而不发送数据

    我在用着请求 js https github com request request用于 Node js 中的 http 请求 request method POST uri http www example com getData fol