Как отправить токен в API? в машинописи - PullRequest
0 голосов
/ 07 января 2019

Я отправляю данные для входа и получаю access_token для авторизации, но отправка токена обратно в web api для подтверждения входа не удается

getToken() {
    let headers = new Headers();
    headers.append('Accept', 'application/x-www-form-urlencoded');
    headers.append('Content-Type', 'application/x-www-form-urlencoded');


    let options = new RequestOptions({ headers: headers });

    let name = this.UserName,
        psd = this.Password;

    let data = 'grant_type=password&UserName=' + name + '&Password=' + psd

    return new Promise((resolve, reject) => {
        this.http.post('http://localhost:65882/Token', data, { headers: headers })
            .toPromise()
            .then((data: any) => {
                this.results = data; // get data in result variable
                this.token = JSON.stringify(this.results); // then convert data to json string
                console.log(this.token);
                this.allData = JSON.parse(this.token); // parse json data and pass json string
                console.log('token' + this.allData['_body{access_token}']); // got result of particular string
            })
            .catch((error) => {
                console.log(error.status);
                console.log(JSON.stringify(error));
            });
    });
}

В консоли я получаю подробную информацию о том, как отправить значение токена в API и получить данные для входа или одобрения enter image description here

1 Ответ

0 голосов
/ 07 января 2019

Если вы используете это, убедитесь, что: 1. передать правильный тип контента заголовкам:

headers: {
          "Content-Type": "application/x-www-form-urlencoded"
        }

2. зафиксируйте строку запроса следующим образом:

 queryString.stringify({
          grant_type: 'password',
          username: auth.username,
          password: auth.password,
        }),
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...