我要访问某个API POST端点。如果我通过浏览器开发人员工具从不相关的页面,以前从未访问过该站点的浏览器中执行此操作,那么我将获得正确的JSON响应。实际上,即使我仅指定Content-Type
标头和有效负载,它也可以正常工作。
但是,如果我使用cURL,即使我直接使用所有标头(包括User-Agent)在devtools中运行从“复制为cURL”接收到的字符串,我也会得到{"data": "Invalid json Mrs", "status": "Error", "status_code": 404}
(响应的状态代码仍然是200)。当我在Python中使用请求时,也会发生同样的事情。
在这种情况下,服务器如何区分来自devtools的单个请求和来自非浏览器源的同一单个请求?