Postman 과 Wp REST API 2.0 으로 JWT 서버엔진 만들기 (2)

이번 시간에는 로그인 과정과 로그인 성공시 생성된 token 을 어떻게 저장하고 어떻게 활용하는지 보여드리겠습니다.

token 은 처음 요청시 PHP 에서 생성해서 Mysql 데이타베이스에 저장하고, 이후 요청시에는 DB 에 저장된 token 을 불러서 보내주면 됩니다.

우선 JWT Class 를 사용하는 테마의 functions.php 에 넣어줍니다.

토큰을 사용하기 위해서는 encode decode 함수를 사용하면 됩니다.

$web_token = JWT::encode($token, ‘change.this’); 

encode 함수의 첫 번 째 값 id, pwd 를 담은 배열을 넣고, 두 번째 파라미터는 secret key 입니다. 서버 키로 어려운 키를 넣어주세요.

https://api.wordpress.org/secret-key/1.1/salt/

위 링크를 클릭해서 생성된 문자열을 사용하면 좋습니다.

그럼 POSTMan 으로 테스트를 해 볼까요?

username, password 를 받아서 token 을 DB 속에 넣고 그 값을 보여주게 됩니다.

DB 에는 어떤 값이 들어있는지 볼까요 ?

이렇게 받은 token 값은 쿠키나 localStorage 에 저장해서 사용할 수 있습니다.

이제 Android APP 에서 사용할 AngularJS 코드를 보기로 하죠.

Angular.js 의 코드는 크게 두 가지로 볼 수 있습니다.

token 을 받아오고 , cookie 에 저장한 다음 header 를 바꾸는 작업입니다.

중요한 포인트는 config.headers.Authorization = ‘Bearer ‘ + globals.currentUser.token;
이 부분입니다.

역시 POSTMan 에서 로그인 성공 이후 token 값을 가지고, 친구에게 메세지를 보내는 작업들은 다음 시간에 보여드리겠습니다.