从 cURL 进行 API 调用时找不到资源 404 错误

Posted

技术标签:

【中文标题】从 cURL 进行 API 调用时找不到资源 404 错误【英文标题】:Resource Not Found 404 Error when making an API call from cURL 【发布时间】:2021-12-17 20:32:37 【问题描述】:

我正在做一个上周一直在做的 CTF 活动,但我似乎无法弄清楚出了什么问题。分解它是这样的:

这是一个包含 3 个选项卡的应用程序,分别是“余额”、“交易”和“付款” 每次单击其中一个选项卡时,都会显示来自 API 的信息。 但是“余额”的 API 调用中断,当请求它时,余额选项卡下没有显示任何内容,并返回 404 资源未找到错误。

到目前为止,我已经使用 cURL 尝试通过它与 API 对话,并确保所请求站点的拼写没有错误,但仍然没有运气。

如果有人能引导我朝着正确的方向前进,或者建议采取一种方法而不是一步一步地给出要做什么,我将不胜感激:)。

编辑:API 调用被故意破坏,挑战在于找出它被破坏的原因以及如何修复它。

谢谢!

【问题讨论】:

如果它在过去的某个时候有效,那么 API 中可能发生了一些变化。如果它从未奏效,可能只是您的 API 调用中的拼写错误或类似错误……我知道您说过您已查看过它,再做一次。 您确定这不是资源端的问题吗?您是在本地拨打电话还是通过浏览器拨打电话? @UncaughtTypeError 我正在通过这个站点运行 cURL 命令 -reqbin.com/curl 如果您绝对确定您查询的是正确的 url,那么它一定是服务端的问题。但为了确保我会使用邮递员复制电话,看看我是否可以重现这个问题。 Postman 直接查询 api,绕过浏览器,有效去除中间人。因此,如果您在 Postman 上遇到同样的问题,您就会知道这与浏览器处理呼叫的方式无关。有了这些信息,您应该向 api 的作者开具技术支持票,并尝试通过官方支持渠道解决问题。 @UncaughtTypeError 谢谢这个方法,我测试一下看看效果。 【参考方案1】:

kek 刚刚解决了这个挑战。

您是否考虑过“网络帮”(挑战的背景)可能已将端点从余额更改为其他内容?

考虑到您从 curling get-balances 中获得了 404 余额,也许您可​​以想办法找到其他子域 :)

【讨论】:

你的措辞正是我想要的。我能够夺取旗帜。

以上是关于从 cURL 进行 API 调用时找不到资源 404 错误的主要内容,如果未能解决你的问题,请参考以下文章

Parcelable:从不同应用程序调用时解组时找不到类

调用 lambda 函数时找不到模块

使用 typescript/mocha 进行单元测试时找不到模块

从 JAR 文件运行应用程序时找不到 hibernate.cfg.xml 错误

使用带有 React Native < 0.40.0 的 FacebookSDK 时找不到文件

为啥使用 Origin 标头时找不到路由