【问题标题】:Chrome REST client always requesting GET instead of POSTChrome REST 客户端总是请求 GET 而不是 POST
【发布时间】:2016-06-16 19:59:24
【问题描述】:

看起来我的 Chrome 上的所有 REST 客户端工具突然无法正确发送 POST 请求。即使我选择了 POST 选项,它们也会发送 GET 请求。

我正在使用 node.js 后端服务器开发一个 Web 应用程序。我总是使用 chrome 扩展“Postman - REST Client”来测试我的后端服务。例如,我有一个接收 POST 请求并返回一些结果的 /foo 处理程序,以及一个接收 GET 请求的 /bar 处理程序。 我可以正确地测试这些处理程序,直到昨天,当我对 /foo 的 POST 请求得到响应时:“Cannot GET /foo”,这通常发生在我向 /foo 发送 GET 请求时。当我向 /bar 发送 POST 请求(通常应该返回“Cannot POST /bar”)但没有收到错误消息但得到正确的 GET 结果。

我在 Chrome 上尝试了其他一些 REST 客户端工具,例如“REST 控制台”、“高级 REST 客户端”,但它们都具有相同的行为。但是,我的前端网页可以通过 AJAX POST/GET 调用正确访问这些处理程序。我的后端服务器或 Chrome 浏览器有什么问题吗?

【问题讨论】:

  • 所有 REST Client 工具不能同时出错对吧?也许你应该看看你的申请。
  • 使用 Chrome 网络检查器查看最终发送的请求总是很有帮助。

标签: ajax node.js rest


【解决方案1】:

我遇到了完全相同的问题。原因是我正在测试的网站只允许 https。所有普通的 http 请求都被重定向到 https URL(这是在网络服务器级别完成的)。此重定向导致其余客户端执行附加请求(这次是 GET 请求)。 这是实际通过我的应用程序服务器但随后产生错误“方法 GET 不支持”的请求。

我所要做的就是将我使用的 URL 从 http 更改为 https。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-12-26
    • 2018-10-29
    • 2020-11-12
    相关资源
    最近更新 更多