Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ***************************** \
- // USER REQUESTS
- // ***************************** \
- // Post (create) new user
- router.route('/register').post((req,res) =>
- {
- let userData = new User(req.body);
- userData.save()
- .then(createdUser =>
- {
- res.status(200).json({'User': 'New user was added successfully'});
- })
- .catch(err =>
- {
- res.status(400).send('Failed to create new user');
- });
- });
- // Post (login) existing user
- router.route('/login').post((req,res) =>
- {
- let userData = req.body;
- User.findOne({email: userData.email}, (err, foundUser) =>
- {
- if(err)
- {
- console.log("Error attempting to login: " + err);
- }
- else
- {
- if(!foundUser)
- {
- res.status(401).send("Email is not registered with us.");
- }
- else if(foundUser.password !== userData.password)
- {
- res.status(401).send("Invalid Password");
- }
- else
- {
- res.status(200).send('Login Successful');
- }
- }
- });
- });
- export class AuthService {
- private _uri = 'http://localhost:4000';
- private _registerUri = `${this._uri}/register`;
- private _loginUri = `${this._uri}/login`;
- constructor(private http: HttpClient) { }
- // Register new user to database
- registerUser(user)
- {
- return this.http.post<any>(`${this._registerUri}`, user);
- }
- // Login new user to database
- loginUser(email: String, password: String)
- {
- return this.http.post<any>(`${this._loginUri}`, {email: email, password: password});
- }
- div class="container">
- <h1 id="h_Login">Sign Into Your Account</h1>
- <div class="row" id="main-content">
- <form class="col-8 mx-auto" id="col_FormContent">
- <div class="form-group section">
- <label for="email">Email</label>
- <input type="text" class="form-control" id="email" [(ngModel)]="loginUserData.email" name="email" #email="ngModel">
- </div>
- <div class="form-group section">
- <label for="password">Password</label>
- <input type="password" class="form-control" id="password" [(ngModel)]="loginUserData.password" name="password" #password="ngModel">
- </div>
- <div class="section_Buttons">
- <button class="btn btn-m btn-block" type="submit" (click)="loginUser()">Sign In</button>
- </div>
- </form>
- </div>
- </div>
- export class LoginComponent implements OnInit {
- loginUserData: any = {};
- loginForm: FormGroup;
- constructor(private authService: AuthService, private router: Router) { }
- ngOnInit() {}
- // EVENT HANDLER - (Login Button) Verify and Login user from database
- loginUser()
- {
- this.authService.loginUser(this.loginUserData.email, this.loginUserData.password)
- .subscribe(
- res =>
- {
- console.log("Login was successful");
- this.router.navigate(['/dashboard']);
- },
- err =>
- {
- // **** THE ERROR THAT IS RETURNED **** \
- console.log("Error on user login: " + err);
- }
- );
- }
- }
Add Comment
Please, Sign In to add comment