le serveur répond avec un statut de 403 (Interdit) angulaire

Code L ღ ver:

Quand je tente d'appeler avec this.http.getet @GetMappingje suis en mesure d'envoyer l'appel à un contrôleur de ressort,

Lorsque je tente de passer d' this.http.getà this.http.postet de @GetMappingà @PostMappingje ne suis pas en mesure d'appeler le contrôleur de ressort /api/v1/basicauthméthode.

Comme j'ai le nom d' utilisateur et mot de passe que je veux utiliser PostMappingseulement

Mon code comme ci-dessous: -

Angulaire

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;
}));

boot Spring: -

@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:

Ne pas utiliser en FormData (Angular)tant que votre contrôleur accepte@RequestBody

votre formDatadevrait être quelque chose comme

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

Le repos deserilize automatiquement à la UserDetailsclasse

Je suppose que tu aimes

Origine http://10.200.1.11:23101/article/api/json?id=478550&siteId=1
conseillé
Classement