经过试错,我发现 Google OIDC 不支持在不提供客户端密钥的情况下使用代码流程(code flow):
https://developers.google.com/identity/protocols/oauth2/native-app#exchange-authorization-code
根据最新的 SPA 最佳实践(https://datatracker.ietf.org/doc/html/draft-ietf-oauth-security-topics-13),Code Flow + PKCE 是处理身份验证的推荐方式。有人知道如何使 Google 的 Code Flow 接受 code_challenge 而不是 client_secret 吗?也许可以使用虚拟的 secret?