前提:我是一个新手,所以我意识到,我的一些问题或问题可能听起来很明显,对更有经验的人。
我的情况是:我有一个现有的反应前端和节点后端。我需要向我的应用程序添加身份验证,这样我就可以为我的同事提供登录(和将来的注册)。我们使用AWS资源,并且在科尼图中有一个现有的用户池。
我该怎么做呢?
我做了一些研究,每件事都指向AWS放大器,但我发现现有的资源非常混乱。当我运行amplify init时,扩容似乎创建了一个新的、独立的后端,但我需要坚持现有的后端。
基本上,我所需要的是认证部分,我不想使用其他任何来自放大器本身的东西。
如果我错过了一些明显的事情,我会提前道歉。谢谢。
发布于 2022-06-23 14:10:40
我已经用放大库解决了这个问题。
您可以利用来自@aws-amplify/ui-react的@aws-amplify/ui-react组件,其中的文档是这里。
在最简单的形式中,如下所示:
import { Authenticator } from "@aws-amplify/ui-react";
import Amplify from "aws-amplify";
Amplify.configure(awsExports);
const App = () => {
return (
<Authenticator>
{/* Pass app entry as children */}
{({ signOut, user }) => <Home signOut={signOut} user={user} />}
</Authenticator>
);
};
//Object holding AWS auth config
//This is a seperate file which is imported
export const awsExports = {
Auth: {
mandatorySignIn: true,
region: "YOUR REGION",
userPoolId: "COGNITO_POOL_ID",
userPoolWebClientId: "COGNITO_CLIENT_ID",
},
};因此,在我的应用程序中,我只使用这个身份验证组件,它可以完成与认知池的所有交互,而不需要任何其他的其他操作。有许多不同的道具可以传递到身份验证组件中,所以当然可以查看文档。
https://stackoverflow.com/questions/72731416
复制相似问题