애플리케이션이 실행 중일 때 누가 특정 프로세스를 실행하고 있는지 알아야 하는 경우가 많습니다. 이는 데이터를 올바르게 배포하고 다른 리소스에 대한 액세스 권한을 부여하거나 제한하기 위해 필요합니다. 이 기능은 거의 모든 응용 프로그램에서 사용됩니다.

AppMaster에서 현재 사용자를 식별하는 방법

백엔드 측에서

현재 사용자를 감지하기 위해 AppMaster에 Auth: Get Current User 블록이 있습니다. Auth 모듈에서 제공합니다. 왼쪽의 백엔드 탭에 있는 비즈니스 프로세스 편집기에서 찾을 수 있습니다.

Get Current User block in AppMaster

이 블록은 블록을 실행한 사용자에게 속한 사용자 데이터베이스의 레코드를 반환합니다.

중요한

인증: 현재 사용자 가져오기 블록은 승인된 사용자에 대해서만 작동합니다. 다른 모든 경우에는 이 블록의 결과가 정의되지 않습니다.

이 간단한 방법으로 애플리케이션의 현재 사용자를 얻을 수 있습니다. 그러나 이 블록은 백엔드에만 존재하지만 대부분의 경우 애플리케이션의 프론트엔드에서 사용자를 식별하는 데 필요합니다.

프론트엔드 측에서

프론트엔드에서 백엔드로 프로세스를 실행하기 위해 엔드포인트가 사용됩니다. 이 문서 에서 이에 대한 자세한 정보를 찾을 수 있습니다.

Auth: Get Current User 블록의 경우 아래 스크린샷과 같이 새 엔드포인트를 생성해야 합니다.

Get Current User block

프론트엔드에서 엔드포인트를 호출하려면 서버 요청 GET /user/get-current 블록을 사용해야 합니다(이 현재의 경우). 엔드포인트의 엔드포인트 사용 흐름은 웹 및 모바일 애플리케이션에서 동일합니다.

Server Request GET

현재 사용자와 작업

인증: 현재 사용자 가져오기 블록 사용의 몇 가지 예를 살펴보겠습니다. 블록 자체는 User 테이블에서 레코드를 반환합니다. 레코드에서 특정 데이터를 가져오려면 사용자 확장 블록을 사용하여 이 레코드를 확장해야 합니다.

Get Current User

출력의 모든 필드는 특정 방식으로 사용할 수 있습니다. 예를 들어 사용자 계정이 확인되었는지 확인하려면 아래 이미지와 같이 boolean 유형의 Confirmed 필드를 사용할 수 있습니다.

AppMaster

매개변수

출력의 With 매개변수는 관련 테이블을 사용하여 요청을 수행해야 하는지 여부를 지정합니다. 따라서 예를 들어 현재 사용자 개체(즉, 현재 사용자 세션 목록)에 대한 사용자 세션 테이블에서 데이터를 가져오려면 관련 테이블(이 경우 사용자 세션)을 검색하기 위해 with 필드에 값을 지정해야 합니다. ).

Parameter With

중요한!

With 매개 변수는 쿼리를 복잡하게 만들어 처리 시간을 늘립니다. 기본적으로 사용되지 않으며 필요한 경우에만 사용됩니다.

결론

이 기사에서는 백엔드 측과 프론트엔드 측에서 애플리케이션의 현재 사용자를 확인하는 방법을 배웠습니다. 이 기능은 애플리케이션 개발에서 가장 자주 사용되는 기능 중 하나입니다. AppMaster를 사용하면 몇 가지 비즈니스 프로세스 블록 조합으로 이러한 요청을 쉽게 수행할 수 있습니다.