티스토리 뷰

Ionic&cordova

Auth

불량마늘 2017. 2. 6. 14:48

Auth (사용자 인증)


인증 공급자들

Provider 

Setup & Usage 

Email / password 

(아래참조) 

Custom 

In-App Browser 

Facebook 

Native Login (선호) / In-App Browser

Google 

Native Login (선호) / In-App Browser 

Twitter 

In-App Browser 

Instagram 

In-App Browser 

LinkedIn 

In-App Browser 

Github 

In-App Browser 


Email/Password 인증

로그인 컴포넌트에서 Auth와 User를 import 한다.
  • Auth : 등록 및 로그인/로그아웃을 처리하는 서비스
  • User : 익명여부에 관계없이 현재 사용자에 대한 참조.

import { Component } from '@angular/core';

import { Auth, User } from '@ionic/cloud-angular';


@Component ({

...

})

export class LoginPage {

constructor (public auth: Auth, public user: User) {

...

}

}


회원가입

이건 나중에...


로그인

provider ID로 basic을 설정하는 것 외에도 이메일 및 암호 세부 정보가 있는 개체가 필요.

let details = { 'email' : 'hi@ionic.io', 'password' : 'password123' };

this.auth.login('basic', detials).then( ... );


로그아웃

현재 사용자 컨텍스트가 지워진다.

this.auth.logout();


비밀번호 재설정

이것도 나중에...

사용자 상태

현재 사용자가 인증되었는지 확인

if(this.auth.isAuthenticated()) {
// this.user 인증된 상태임!
}


User Data

Storing Data

사용자 데이터를 저장하는 기능.
예를 들어, 사용자의 생년월일을 저장하면 생일 메세지나 할인을 사용자에게 보낼 수 있다.

저장

데이터 쓰기 또는 덮어 쓰기
저장 가능 형태 : strings, numbers, booleans, arrays, objects.

this.user.set('birthdate', '5/17/2017');


검색

데이터 읽기
값 또는 null을 가져온다.

this.user.get('birthdate');


삭제

데이터 삭제

this.user.unset('birthdate');


User Details

공통 사용자 데이터를 datails 속성에 저장할 수 있다.
get(), set()을 사용하는 사용자 정의 데이터와 달리 세부 정보는 아래에 나열된 객체 뿐이다.

username

unique username

email 

unique email address

password 

write-only password 

name 

first and last name 

image 

url to identifying image (이미지를 식별하는 URL) 



this.user.details.name = '이름';

this.user.details.image = '이미지 주소';

this.user.details.password = '비밀번호';


사용자 데이터 변경의 저장

this.user.save();


변경 사항은 save()가 호출될 때까지 장치에 로컬로 적용되어 사용자를 서버에 보관한다. 로컬 데이터는 항상 서버데이터를 덮어 쓴다.


사용자 새로고침

API를 통해 사용자를 변경하면 장치의 사용자를 새로 고쳐야 한다. 사용자가 로그인하면 load() 를 호출 할 수 있다.

this.user.load().then(() => {
    // success!
});


FAQ

는 나중에..


참고사이트

https://www.joshmorony.com/using-json-web-tokens-jwt-for-custom-authentication-in-ionic-2-part-2/

'Ionic&cordova' 카테고리의 다른 글

Android Studio & Gradle 버전 오류로 Ionic2 build 실패  (1) 2017.04.05
Error 모음  (0) 2017.02.07
Cloud Deploy - 프로젝트에 적용  (0) 2017.02.06
Cloud Deploy - 환경세팅  (0) 2017.02.06
화면 라이프사이클  (0) 2017.02.03
댓글