我的 POST 请求更改为 GET 并且执行停止

my POST request changes to GET and execution stops

我对 .map 功能有疑问。它似乎将我的显式 POST 请求更改为 GET。它显示在 url 栏中,GET 也显示在 Fiddler 中。 我的第一个问题是:为什么会这样,我该如何解决?

我的第二个问题是,如何提取这个非常简单的 JSON 响应 JSON="asfdsflkdsfnlkds.dsfdsergrnkger.ynttyjokhn" 正确地从服务器并将其传递给 JwtToken 变量?

这是我的服务 POST:

import { Injectable } from '@angular/core';
import { /*HTTP_PROVIDERS, */ Headers } from '@angular/http';
import { AuthHttp } from 'angular2-jwt';
//import { map } from 'rxjs';


class JwtToken {
    token: string;
}

@Injectable()
export class AuthenticationService {

    jwtToken: any;

    constructor(public authHttp: AuthHttp) { }

    //jwtHeader = new Headers({
    //    "Content-Type": "application/json",
    //    "alg": "HS256",
    //    "typ": "JWT"
    //});

    Login(username: string, password: string) {
        this.authHttp.post('/api/login',
            {
                "username": username,
                "password": password
            }
            //,{ headers: this.jwtHeader }
        ).map(res => <JwtToken>res.json())
            .subscribe(
            data => {
                console.log(data);
                this.jwtToken = data;
            }
            );

        console.log(this.jwtToken);

        return this.jwtToken;
    }

}

顺便说一句。我无法从 rxjs 导入 map。它给了我一个错误。不过,好像还是有.map

您需要导入为:

import 'rxjs/add/operator/map';