Winkel 5 Http-Post-Request

Ich bin versuchen, um eine app zu erstellen mit Winkel-5 durch Webstorm.
Ich habe meine Dienstleistungen im back-end.
Wenn ich versuche, Daten abzurufen, die vom Briefträger oder vom Rest-client-tool, das
Webstorm bieten ist alles ok.

Aber wenn ich versuche Daten von meinem eigentlichen code von Typoskript Winkel sagt

Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:4200' is therefore not allowed access. 

Ich add Header im backend auf meinem java-service
wie

        response.addHeader("Access-Control-Allow-Origin", "*"); 
        response.addHeader("Access-Control-Allow-Credentials", "true");
        response.addHeader("Access-Control-Allow-Methods", "GET, POST, DELETE, PUT, OPTIONS, HEAD");
        response.addHeader("Access-Control-Allow-Headers", "Content-Type, Accept, X-Requested-With");

Meine fuction im export-Klasse ist unter

      constructor(private http: HttpClient) { }




  login(username: string, password: string) {
    console.log(username + '' + password);
    const headers = new HttpHeaders().append('Content-Type', 'application/json')
    const url  = 'http://localhost:8080/../UserLogin';



    return this.http.post(url, {'username': username, 'password': password}  )
      .subscribe(
      (data: any) => {
        console.log(data);

      }
    );

  }

Wenn ich die Anfrage-Header von Network Session chrome
ich sehe, dass die request-Methode ist Optionen und es ist nirgendwo
die Daten anfordern.

Bin ich irgendwie verwirrt darüber, warum Briefträger und der rest-client von webstrom
laufen schön und nicht in meiner Funktion und die zweite über den Antrag
Methode für die Umwandlung von Post-OPTIONEN

Jede Hilfe zu schätzen wissen.

InformationsquelleAutor Dimitris | 2018-04-27



2 Replies
  1. 1

    Müssen Sie { withCredentials: true } als Dritten parameter von deinem post.

    return this.http.post(
        url,
        {'username': username, 'password': password},
        { withCredentials: true }
      )
      .subscribe(
        (data: any) => {
          console.log(data);
        }
      );
    
    • Danke für deine direkte Antwort. Ich habe versucht, Ihre Umsetzung aber immer noch die gleichen Fehler. So wie ich das sehe, von post-Dokumentation der Dritte Parameter bezieht sich auf Optionen. Ich versuche auch, um meinen Header wie wieder zurück.http.post(url, {„Benutzername“: Benutzername „Passwort“: Passwort‘} , { Header : Header} ) .abonnieren( (data: any) => { console.log(data); aber immer noch das gleiche. } );

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.