我有一个React JS项目,它允许用户通过我自己的基于Keycloak的ID提供程序登录,在成功认证的情况下返回一个JWT令牌。
我想使用此令牌从Google Cloud获取短期ID令牌,以调用Cloud Run端点。
所有GCP配置都已正确设置,因为如果我手动调用适当的端点,我可以获得此令牌,但我想从我的React应用程序中自动执行它。AFAIK google-auth-library
实现了让我获得此令牌的功能,但当我在项目中执行npm i google-auth-library
并启动应用程序时,我会收到大量类似于此的错误:
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default.
This is no longer the case. Verify if you need this module and configure a polyfill for it.
If you want to include a polyfill, you need to:
- add a fallback 'resolve.fallback: { "util": require.resolve("util/") }'
- install 'util'
If you don't want to include a polyfill, you can use an empty module like this:
resolve.fallback: { "util": false }
有什么方法可以防止这些错误的发生吗?我已经试过react-app-rewrite
了,但没有太大的成功。
React版本:18.2.0 google-auth-library版本:8.7.0
1条答案
按热度按时间pqwbnv8z1#
您将面临错误原因
google-auth-library
是node.js库而不是react js库。你不应该在React.js前端使用
google-auth-library
,因为它会构成安全威胁。您可以在google-auth-library中找到并使用与您要使用的函数相同的API调用。
或者创建一个node js服务器,为你的前端做这些事情。