我正在开发一个 Web 应用程序,其中所有动态内容都通过 Ajax 请求作为 JSON 检索。我正在考虑是否应该保护 GET API 调用不被来自不同来源的调用?
GET 请求不会修改状态,普遍的看法是它们不需要 CSRF 保护。但我想知道是否没有浏览器将此类请求的结果泄漏到不同源站点的极端情况?
例如,如果不同的源站点将 /users/emails 作为脚本、css 或 img 获取,浏览器是否有可能将生成的 json 泄漏到调用站点(例如通过 javascript onerror 处理程序)?
浏览器是否提供了足够强的保证来保证跨源 JSON 响应的内容不会泄露?你认为保护 GET 请求免受跨源调用是有意义的还是有点矫枉过正?