通用与特定 API 响应

Generic vs Specific API Responses

关于 API 响应消息应该有多具体有什么想法吗? 我是从与数据类型验证相关的安全角度来看这个问题的。

说我的 API 需要 string 作为 id 并且我的服务器验证类型 - 如果不是 string,我应该用类似.."Field must be of type string?". 这对于被文档刷过的用户来说很方便,因为这将是对他们客户端代码的简单修复,但是黑客呢?

他们可以通过这些响应来获取信息,以了解有关 API 输入的更多信息。 IE。他们可以输入任何随机数据,然后发现 API 只接受字符串,这可以进一步帮助他们。

对此有什么想法吗?

隐藏东西绝不是提供安全的好方法。

您应该提供尽可能多的有关错误的详细信息,以便帮助人们使用您的 API。您的实施应该进行所有必要的检查以确保输入数据安全。

唯一要点:不要抛出类似 "Email does not exist in db" 的错误,因为它会泄露有关您的数据的信息。