нулевые параметры от угловых - PullRequest
0 голосов
/ 24 февраля 2019

Я пытаюсь отправить параметры из моего углового приложения с помощью httpRequest.Я возвращаю Null на мой сервер.Я проверил, как Почтальон и Фиддлер работают с json Object.Я пытался перейти с Post на Get.Я использую Java RestAPI для серверной части с сервером Apache Tomcat в качестве сервера.

Это мой сервис для входа в систему:

@Injectable({
  providedIn: 'root'
})
export class LoginService {
private loginURL='http://localhost:8080/CouponSystemWeb/rest/loginpage/login'
  constructor(private http:HttpClient) { }

 public login(loginDetailes:LoginDetailes):Observable<LoginDetailes>{
  return this.http.post<LoginDetailes>(this.loginURL,loginDetailes,{withCredentials:true})
 } 
}

Это мой логинКомпонент:

import { Component, OnInit } from '@angular/core';
import { LoginDetailes } from 'src/app/Entities/LoginDetailes';
import { LoginService } from 'src/app/services/login.service';
import { Router } from '@angular/router';

@Component({
  selector: 'app-login',
  templateUrl: './login.component.html',
  styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
public loggedin:boolean;
public loggedClient:string;
public errormessage:string;
public loginDetailes = new LoginDetailes();
  constructor(private loginservice:LoginService,private router:Router) { }

  ngOnInit() {
  this.loggedin=false;
  }
public onLogin():void{
  const observable=this.loginservice.login(this.loginDetailes);
  observable.subscribe((returnedLoginDetailes:LoginDetailes)=>{
    alert("Login Aquired");
    this.loggedin=true;

  if(this.loginDetailes.clientType=="ADMIN"){
    this.router.navigate(['/crtComp']);
  }
  else if(this.loginDetailes.clientType=="COMPANY"){
  this.router.navigate(['/login']);
  }
  else if(this.loginDetailes.clientType=="CUSTOMER"){
    this.router.navigate(['/login']);
  }else{
    alert("Wrong Login Detailes");  
  }

  }, err => {
  this.errormessage=err.console.error("Wrong Detailes please Check Again!");
  alert(this.errormessage);
}
  )}} 

Это учетная запись:

export class LoginDetailes{
    public name:string
    public password:string
    public clientType:string
    constructor(){
    }
}

Я пробовал ngModel, но это не решило проблему.Я попытался изменить свой бэкэнд с Post на Get.Проблема происходит только в угловом приложении.Я могу отправлять параметры с помощью fiddler и Postman без проблем.

1 Ответ

0 голосов
/ 24 февраля 2019

Хорошо, ответ был не в компоненте или услуге.проблема была в HTML, мне не хватало двухсторонней привязки данных ngModel, поэтому мое приложение отправляло нули.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...