O servidor respondeu com um status de 403 angular (proibido)

Código L ღ ver:

Quando tento ligar com this.http.gete @GetMappingeu sou capaz de enviar a chamada para controlador de primavera,

Quando tento mudança a partir this.http.getde this.http.poste para @GetMappinga @PostMappingEu não sou capaz de chamar o controlador de primavera /api/v1/basicauthmétodo.

Como eu estou tendo nome de usuário e senha Eu quero usar PostMappingúnica

Meu código como abaixo: -

Angular

var formData: any = new FormData();
formData.append("userName", username);
formData.append("password", password);

let params = new HttpParams();
params = params.append('username', username);
params = params.append('password', password);
return this.http.post<any>('/api/v1/basicauth', { formData }).pipe(map((res) => {
    this.username = username;
    this.password = password;
}));

Primavera arrancar: -

@PostMapping(path = "/basicauth")
public AuthenticationBean helloWorldBean(@RequestBody UserDetails user) {
log.info("Start helloWorldBean method");

UserDetails.java

    public class UserDetails {

        private int userId;
        private String userName;
        private String password;
   }
Yogesh Prajapati:

Não use FormData (Angular)como seu controlador está aceitando@RequestBody

o seu formDatadeve ser algo como

var formData = {"username": username, "password": password};

Resto vai deserilize automaticamente a UserDetailsclasse

Acho que você gosta

Origin http://10.200.1.11:23101/article/api/json?id=478548&siteId=1
Recomendado
Clasificación