这绝不是一份全面的指南,但 React Router 提供了一些功能来帮助解决安全性这个*非常广泛*的范畴下的几个方面。
内容安全策略
如果您正在您的应用中实现内容安全策略(CSP),特别是使用了 unsafe-inline
指令的策略,您需要在 HTML 中渲染的内联 <script>
元素上指定一个 nonce
属性。生成内联脚本的任何 API 都必须指定此属性,包括
<Scripts nonce>
(root.tsx
)<ScrollRestoration nonce>
(root.tsx
)<ServerRouter nonce>
(entry.server.tsx
)renderToPipeableStream(..., { nonce })
(entry.server.tsx
)renderToReadableStream(..., { nonce })
(entry.server.tsx`)