java - 判断api请求是来自CURL还是POSTMAN?

标签 java rest postman

我想区分 API 端点通过浏览器或 postman 命中时的错误响应。

我搜索了解决方案,一个网站给出了检查HTTP请求 header 的建议,如果它来自浏览器,那么它有USER-AGENT

例如USER-AGENT=Mozilla/5.0(Windows NT 10.0;Win64;x64)AppleWebKit/537.36(KHTML,如 Gecko)Chrome/79.0.3945.88 Safari/537.36

仍然可以通过 postman 通过将 USER-AGENT 设置为具有该值的 HTTP header 来进行操作。

有人有想法吗?

最佳答案

数据通过 3 种方式发送到服务器。

<强>1。使用User-Agents .

使用 CURL 时,请求的用户代理为 curl/<version>

使用 POSTMAN 时,请求有

  1. 用户代理为 PostmanRuntime/<version>
  2. 附加 header “Postman-Token”为 <version 4 UUID> (Reference)

<强>2。使用请求参数

从网络客户端发出请求时发送 token 。

例如:client=webclient

<强>3。使用请求正文

与之前相同,但在请求正文中

注意:在所有方法中,所有 header /参数都可以修改。

关于java - 判断api请求是来自CURL还是POSTMAN?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59484764/

相关文章:

php - 使用 Web 服务的 Codeigniter 分页

java - Swing 应用程序框架 @Action 注释?做什么的?

java - 哪个更好,编写另一种方法还是向现有方法添加更多参数?

java.lang.IllegalStateException : Target host is null

java - 获取数组中连续元素的绝对差值,并返回哪个差值出现最多

rest - 如何使用 Jenkins REST API 发布更新的 config.xml?

web-services - 使用时区信息进行地理编码

Laravel Fortify 不响应 HTTP 代码而是响应实际路由,即使我将注册请求作为 XHR 发送

django - 如何使用 postman 发送嵌套的表单数据?

php - 如何在 POSTMAN Rest API 中测试 OOP PHP 函数