이 기사는 원래 Okta Developer 블로그에 게시되었습니다. Sitepoint를 가능하게하는 파트너를 지원해 주셔서 감사합니다.
이 자습서에서는 OKTA 로그인 위젯을 사용하여 몇 페이지와 사용자 인증이 포함 된 기본 프레아 츠 애플리케이션을 구축하게됩니다.
이 명령은 기본 사전 앱을 스캐 폴딩하고 모든 종속성을 설치하는 몇 분 동안 chug됩니다. 완료되면 다음에 할 수있는 일을 알려주는 명령 줄에 많은 정보가 표시됩니다.
.그런 다음 모든 것이 예상대로 작동하는지 확인하기 위해 응용 프로그램을 시작하십시오.
빠른 빌드 실행이 표시되면 화면이 지워지고 응용 프로그램이 http : // localhost : 8080에서 실행 중임을 보여줍니다. 브라우저에서 해당 URL을 열면 다음과 같은 페이지가 표시됩니다.
- 에 대해 주목해야 할 몇 가지
- 예를 들어
ReactCli와 달리 웹 팩 구성을 배출 할 방법이 없습니다. 대신 PreAct는 PreAct의 WebPack Config Helpers를 사용하여 PreAct.config.js라는 파일을 만들어 Webpack의 WebPack Config Helpers 및 Webpack이 동작하는 방식을 변경하여 Webpack을 사용자 정의하여 Webpack을 사용자 정의 할 것을 권장합니다. . PreActCli가 응용 프로그램이 http://0.0.0.0:8080에서 실행 중이라고 말하지만 http : // localhost : 8080을 사용하십시오. 똑같은 일이며 Okta 대시 보드에서 응용 프로그램을 설정하면 http : // localhost : 8080을 기본 URL 및 콜백 URL로 설정하므로 Okta API를 호출 할 수 있습니다. >
OKTA 응용 프로그램을 만듭니다 이제 응용 프로그램의 기본 쉘이 있으므로 이제 사용자 인증을 추가 할 차례입니다. 아직 하나가 없다면 Okta에서 무료 (영원히) 계정을 만듭니다. 일단 계정을 만들면 관리 대시 보드로 이동하여 페이지 메뉴에서 "응용 프로그램"을 클릭하십시오. 그런 다음 녹색 "애플리케이션 추가"버튼을 클릭 한 다음 녹색 "새 앱 생성"버튼을 클릭하여 다음과 같은 모달 창이 표시됩니다. 사용자를 생성하고 (아직없는 경우) 새 응용 프로그램을 할당해야합니다. 또는 OKTA 계정 (관리자 사용자)에 로그인하는 데 사용하는 자격 증명으로 로그인 할 수 있습니다.
위젯에서 Okta 사인을 설치하십시오 새로운 PreAct 응용 프로그램에 대한 Okta의 인증을 얻는 가장 쉬운 방법은 Okta의 로그인 위젯을 사용하는 것입니다. 다음을 사용하여 NPM으로 설치합니다 와 함께 PreAct-Router를 설치해야합니다 인증 고차 구성 요소를 추가하십시오 이 완료되면 이제 인증을 돕기 위해 고차계 구성 요소를 추가해야합니다. /src /lib 폴더에서 auth.js라는 파일을 추가하고 다음 코드를 추가하십시오. 첫 번째 코드 라인에서는 다른 것을 말할 수 있습니다. PreAct의 H 모듈은 JSX를 DOM 요소로 바꾸는 것입니다. 일반적으로 React는 React 라이브러리를 사용하여 REACT.CreateElement 문을 생성하여 JSX에서 DOM 요소를 만듭니다. PreAct는 H 라이브러리를 사용하여 h ( 'div', {class : 'something'}, 'content')와 같은 것을 만들어냅니다.다음으로, 당신은 h 가져 오기 바로 아래의 preact-router에서 경로를 가져 왔습니다. 이것은 로그인 함수에서 리디렉션을 수행하기 위해 Preact가 사용하는 것입니다. 인증 클래스는 정기적 인 기능이며 구성 요소를 확장하지 않습니다. 생성자에서 내부 함수는 인증 클래스 의이 컨텍스트와 결합되었습니다. 그런 다음 OKTA 조직 URL 및 클라이언트 ID를 OKTA 로그인 위젯 구성에 입력하십시오. 조직 URL은 OKTA 계정 (예 : http://dev-12345.oktapreview.com)에 로그인 할 때 사용하는 URL이며 "일반"일반 대시 보드의 응용 프로그램 속성 페이지에서 클라이언트 ID를 얻을 수 있습니다. ”응용 프로그램의 탭 (분명히, 당신의 것이 흐려지지 않을 것입니다) : redirecturi 속성을 http : // localhost : 8080으로 변경하고 싶을 것입니다. 로그인 함수는 단순히 사용자를 로그인 페이지로 라우팅하고 로그 아웃 함수는 위젯의 토큰 관리자에 저장된 토큰을 지우고 위젯에서 가입장을 호출하고 사용자를 응용 프로그램의 루트로 리디렉션합니다. .
마지막으로, 인증 클래스의 싱글 톤은 모든 구성 요소가 공유하도록 만들어지며 Withauth로 랩하는 모든 구성 요소에 인증이라는 소품으로 전달됩니다. 위젯 래퍼를 만듭니다 alktasigninwidget.js라는 /src /lib 폴더에서 파일을 만듭니다. 이 구성 요소의 코드를 입력하십시오 : 여기, ComponentDidMount 메소드는 렌더 메소드에서 OKTA 로그인 위젯을 DIV로 렌더링하고 구성 요소 WillUnMount 함수가 위젯을 제거합니다. .
렌더 메소드에는 이상한 코드가 있습니다. 이를 통해 현재 요소에 대한 참조를 WidgetContainer라는 변수로 설정 한 다음 this.widgetContainer와 같이 ComponentDidMount에서 사용할 수 있습니다. 깔끔 했어? 저에게 그 속임수를 보여준 Matt Raible에게 감사합니다! 리디렉션 구성 요소를 만듭니다 반응-로터에는 리디렉션 구성 요소가 있지만 PreAct 라우터는 그렇지 않으므로 필요합니다. 운 좋게도 직접 만들기가 쉽습니다. /src /lib 폴더에서 redirect.js라는 파일을 만듭니다. 로그인 구성 요소를 만듭니다 다음으로 SRC/Routes에서 로그인 폴더를 만듭니다. 해당 폴더에서 index.js 파일과 style.css 파일을 만듭니다. 이것은 단지 preact cli가 구성 요소를 만드는 방식과 함께 이어집니다. <.> index.js 파일에서 Withauth 구성 요소로 싸서 로그인 구성 요소를 만듭니다. 먼저, 필요한 모듈을 가져와 :
npm install -g preact-cli
이전에 만든 Withauth 고차 구성 요소를 래핑하여 구성 요소를 시작하고 시작 상태를 설정하십시오. 여기에서 redirecttoreferrer가 기본적으로 False로 설정됩니다. ComponentWillmount 라이프 사이클 기능에서 onsuccess와 onerror 함수를 연결하고 구성 요소에 작성하십시오. 구성 요소가 인증 처리를 고차 구성 요소로 돌려 보내는 것을 알 수 있습니다. 이것은 JavaScript의 고차 성분 및 구성의 이점의 대표적인 예입니다. 마지막으로 로그인 위젯 표시에 대한 결정을 내리거나 사용자가 이미 로그인 한 경우 홈페이지로 리디렉션하는 렌더링 함수를 만듭니다. 또한 사용자를 로그인 페이지로 리디렉션 될 때 가고있는 페이지로 사용자를 리디렉션 할 수도 있지만 지금은 건너 뛰자. preact create okta-preact-example
여기서 PreAct는 렌더링 함수의 매개 변수로서 소품 및 상태에 대한 핸들을 제공한다는 점에서 약간 다르다는 것을 알게 될 것입니다. 이 코드는 단순히 해당 매개 변수의 파괴를 사용하여 위치, 인증 및 retirecttoreferrer 간단한이 톤을 사용하지 않고도 사용합니다. > 따라서 최종 /src/routes/login/index.js 파일은 다음과 같습니다 프로파일 페이지 를 업데이트하십시오 이제 로그인 구성 요소가 있고 Okta 로그인 위젯을 사용하고 있으므로 생성 한 인증 구성 요소를 사용하고 프로필 페이지 (/src/routes/profile/index.js)를 업데이트하여 더 많은 정보를 제공하십시오. 사용자에 대한 정보. 이것이 최종 /src/routes/profile/index.js 파일이 다음과 같습니다. 구성 요소의 구성 요소 필름 기능의 구성 요소 레벨에서 인증 보호 기능을 추가했습니다. 사용자가 인증 된 경우 고차 구성 요소에서 GetCurrentUser 함수를 호출하고 사용자를 구성 요소의 상태에 추가합니다. 렌더링 함수에서 간단히 사용자 이름과 이메일을 출력합니다. cd okta-preact-example
헤더 구성 요소를 업데이트하십시오 이제 응용 프로그램에 경로를 가져 와서 메뉴를 링크해야합니다. /src/components/header/index.js 파일을 다음과 같이 변경하여 시작하십시오 사용자가 로그인하지 않은 경우 "로그인"버튼과 "로그 아웃"버튼이 표시됩니다. 또한 로그인 한 사용자에게만 "프로필"메뉴 항목 만 표시됩니다. 라우팅을 변경 마지막으로, 애플리케이션이 새 경로와 처리 방법에 대해 알 수 있도록 /src/components/app.js 파일의 경로를 변경하십시오. 따라서 새 app.js 파일은 다음과 같습니다 실제로 변경된 모든 것은 새로 생성 된 로그인 구성 요소를 가져 와서 프로파일 구성 요소로 전달되는 사용자 속성을 제거하고 로그인 구성 요소에 새 경로를 추가했다는 것입니다. 새 프리 아트 응용 프로그램을 실행하십시오! 이제 루트 폴더에서 작업을 저장하고 NPM을 실행하고 OKTA를 통해 사용자 인증을 통해 완전히 기능하는 PREACT 애플리케이션을 볼 수 있어야합니다! .
.Preact와 React 사이에는 많은 유사점이 있지만 몇 가지 주요 차이점이 있습니다. Preact는 다운로드 크기를 작게 유지하는 것이 중요하는 응용 프로그램을위한 것입니다. PreAct 라우터에는 좋은 편의성이 있지만 (Withrouter와 같이) 누락 된 것들이 있습니다. 소품과 상태가 렌더링 함수로 전달되는 것과 같은 깔끔한 편의성도 있습니다. 대체로, 나는 preact가 깔끔하다고 생각하지만, 복잡한 앱에 대한 본격적인 반응이 필요한 것을 볼 수있었습니다. 자세히 알아보십시오
당신은 그들의 웹 사이트에서 preact에 대해 자세히 알아볼 수 있으며 Github 저장소의 preact-router. Okta 개발자 Github Repository 에서이 기사에 대한 전체 코드를 얻을 수도 있습니다. 언제나 그렇듯이 기사, 코드, preact 또는 okta에 대한 질문, 의견 또는 우려 사항이 있으면 이메일을 통해 저에게 연락을 취하거나 의견이나 트위터 @leebrandt를 통해 저를 때리십시오. 인증이있는 preact 앱 구축에 대해 자주 묻는 질문 precat 란 무엇이며 반응과 어떻게 다릅니 까? preact는 RECT와 유사한 빠르고 가벼운 JavaScript 라이브러리입니다. 압축 크기는 3KB로 작고 효율적으로 설계되었습니다. PREACT는 가상 DOM Diffing 및 구성 요소와 같은 동일한 최신 UI 라이브러리 및 REACT 기능을 제공하지만 발자국이 더 작습니다. 대역폭 및 성능이 문제가 될 수있는 모바일 장치에 적합합니다. PreAct는 또한 API에서 가능한 한 RECT에 가깝게 가깝기 때문에 React 개발자가 최소한의 조정으로 PreAct를 사용하기 쉽습니다.
PreAct 프로젝트를 어떻게 설정합니까?preact 앱에 인증을 추가하는 방법은 무엇입니까?
PreAct 앱에 인증 추가에는 여러 단계가 포함됩니다. 먼저, 라우팅을위한 PreAct-Router와 같은 필요한 라이브러리 및 쿠키 처리를위한 PreAct-Cookies와 같은 필요한 라이브러리를 설치하고 가져와야합니다. 그런 다음 로그인 요청을 처리하고 사용자 세션을 관리하는 로그인 양식 및 인증 서비스를 작성해야합니다. 마지막으로 보호 구성 요소를 렌더링하기 전에 사용자가 인증 된 지 확인하여 경로를 보호해야합니다.
preact에서 라우팅을 어떻게 처리합니까? 구성 요소 및 구성 요소를 사용하여 경로를 정의 할 수 있습니다. 각 구성 요소는 페이지를 나타내며 URL과 일치하는 '경로'소품이 있습니다. preact에서 상태를 어떻게 관리합니까?
preact는 "props"라는 개념을 사용합니다. 상태”데이터를 관리합니다. 소품은 부모의 구성 요소로 전달되며 상태는 구성 요소 내에서 관리됩니다. PreAct의 주 경영진은 React와 유사합니다. this.setstate () 메소드를 사용하여 상태를 업데이트하고 구성 요소를 다시 렌더링 할 수 있습니다. 복잡한 상태 관리의 경우 redux 또는 mobx와 같은 라이브러리를 사용할 수 있습니다.preact에서 후크를 어떻게 사용합니까?
preact는 상태 및 기타 반응 기능을 사용할 수있는 기능을 지원합니다. 수업을 쓰지 않고. preact에서 후크를 사용하려면‘preact/hooks’에서 가져와야합니다. PreAct의 Hooks API는 React와 동일하므로 usestate, useeffect 및 usecontext와 같은 후크를 같은 방식으로 사용할 수 있습니다.내 preact 앱을 어떻게 테스트합니까?
테스트 라이브러리 및 Jest 및 Enzyme과 같은 프레임 워크를 사용하여 PREACT 앱을 테스트 할 수 있습니다. Jest는 Preact와 잘 작동하는 JavaScript 테스트 프레임 워크이며, Enzyme은 PREACT와 함께 사용할 수있는 React의 테스트 유틸리티입니다. PreAct 구성 요소를 테스트하기위한 도우미 기능을 제공하는 라이브러리 인 PreAct-Test-Utils를 사용할 수도 있습니다.
PreAct 앱을 어떻게 배포 하는가?성능을 위해 PreAct 앱을 최적화하는 방법은 무엇입니까?
PreAct는 이미 상자에서 성능을 위해 최적화되어 있지만 여러 가지가 있습니다. 앱을 더 빨리 만들기 위해 할 수있는 일. 여기에는 코드 분할, 게으른로드 구성 요소 및 이미지 및 기타 자산 최적화가 포함됩니다. 또한 불필요한 재 렌더를 방지하기 위해 PreAct의 꼭 봐야 할 수명을 사용하지 않을 수 있습니다.
PreAct 앱에서 React 라이브러리와 구성 요소를 사용할 수 있습니까?
위 내용은 인증이있는 preact 앱을 구축하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

이 최고의 개발자 뉴스 레터와 함께 최신 기술 트렌드에 대해 정보를 얻으십시오! 이 선별 된 목록은 AI 애호가부터 노련한 백엔드 및 프론트 엔드 개발자에 이르기까지 모든 사람에게 무언가를 제공합니다. 즐겨 찾기를 선택하고 Rel을 검색하는 데 시간을 절약하십시오

이 튜토리얼은 AWS 서비스를 사용하여 서버리스 이미지 처리 파이프 라인을 구축함으로써 안내합니다. ECS Fargate 클러스터에 배포 된 Next.js Frontend를 만들어 API 게이트웨이, Lambda 기능, S3 버킷 및 DynamoDB와 상호 작용합니다. th

CNCF (Cloud Native Computing Foundation), Ampere Computing, Equinix Metal 및 Actuated 간의 공동 작업 인이 파일럿 프로그램은 CNCF Github 프로젝트를위한 ARM64 CI/CD를 간소화합니다. 이 이니셔티브는 보안 문제 및 성과를 다룹니다

이 GO 기반 네트워크 취약점 스캐너는 잠재적 보안 약점을 효율적으로 식별합니다. 속도를 위해 Go의 동시성 기능을 활용하고 서비스 감지 및 취약성 일치를 포함합니다. 그 능력과 윤리를 탐색합시다


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

맨티스BT
Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

Eclipse용 SAP NetWeaver 서버 어댑터
Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경
