반응형
import dotenv from "dotenv";
// 아이디와 핸드폰번호로 이메일 찾는 함수
const onFindEmail = async () => {
try {
dotenv.config();
const AWS = require("aws-sdk");
AWS.config.update({
accessKeyId: process.env.REACT_APP_AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.REACT_APP_AWS_SECRET_ACCESS_KEY,
region: process.env.REACT_APP_AWS_REGION,
});
const cognito = new AWS.CognitoIdentityServiceProvider();
const params = {
UserPoolId: process.env.REACT_APP_AWS_USER_POOL_ID,
Filter: `name = "${name}" and phone_number = "${phone}"`,
Limit: 1,
};
cognito.listUsers(params, function (err, data) {
if (err) {
console.log(err, err.stack);
} else {
setUserEmail(data.Users[0].Username);
}
});
} catch (e) {
console.log(e);
}
};
// .env
REACT_APP_AWS_ACCESS_KEY_ID = 'ACCESS_KEY_ID'
REACT_APP_AWS_SECRET_ACCESS_KEY = 'SECRET_ACCESS_KEY'
REACT_APP_AWS_REGION = 'REGION'
REACT_APP_AWS_USER_POOL_ID = 'USER_POOL_ID'
dotenv 라이브러리 사용 방법
1. npm install dotenv 로 설치 / 이후에 .env 파일을 생성하고, 프로젝트에서 dotenv 라이브러리를 사용하여 .env 파일에 작성된 환경 변수를 로드할 수 있습니다.
2. - React 프로젝트의 루트 디렉토리에 .env 파일을 생성합니다.
- .env 파일에 변수를 설정합니다. 변수는 REACT_APP_로 시작해야 합니다. 예를 들어, REACT_APP_API_KEY=your_api_key와 같이 설정할 수 있습니다.
REACT_APP_API_KEY=your_api_key
3. - 파일에서 아래와 같이 dotenv 모듈을 import하여 .env 파일의 변수들을 로드할 수 있습니다.
import React from "react";
import ReactDOM from "react-dom";
import App from "./App";
import dotenv from "dotenv";
dotenv.config(); // .env 파일의 변수들을 로드합니다.
ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById("root")
);
4. - 변수를 사용할 컴포넌트에서 process.env.REACT_APP_API_KEY와 같이 process.env 객체를 사용하여 변수를 호출합니다.
5. .env 파일은 .gitignore에 추가해야 합니다. 이는 보안상의 이유로 중요합니다.
반응형
'AWS' 카테고리의 다른 글
AWS - Amplify, cognito 사용하여 인증 구현 (0) | 2024.05.08 |
---|---|
AWS - React Cognito 사용자 속성 변경 / Attribution 변경 (0) | 2023.10.11 |
AWS - cognito 인증 추가 / 기존의 user-pool 사용 / amplify update auth (0) | 2023.03.29 |
Amplify backend build error - Non-Zero Exit Code detected (0) | 2023.03.28 |
EC2 서버에 github 프로젝트를 자동 배포 후 재실행 & 코드가 푸시되면 자동으로 배포 & Github Action을 통한 AWS CodeDeploy, S3, EC2 연동 (0) | 2023.03.06 |