Невозможно разместить специальный символ в запросе диалога - PullRequest
0 голосов
/ 20 ноября 2018

Я работаю над ботом dialgflow V1.Я действительно вдохновлен этим хранилищем: https://github.com/mlabouardy/dialogflow-angular5

У меня есть проблема в моей службе диалогового потока.Я не могу отправить запрос со специальными символами.

вот мой сервис diaogflow работает, но когда я передаю свой запрос, это код для utf-8, который нарушает диалог:

import { Injectable } from '@angular/core';
import { Http, Headers } from '@angular/http';
import 'rxjs/Rx'
import { environment } from '../../environments/environment';

@Injectable()
export class DialogflowService {

  private baseURL: string = "https://api.dialogflow.com/v1/query?v=20170712";
  private token: string = environment.dialogFlowToken;

  constructor(private http: Http){}

  public getResponse(query: string){
    let data = {
      query : query,
      lang: 'fr',
      sessionId: '12345'
    }

    return this.http
      .post(`${this.baseURL}`, data, {headers: this.getHeaders()})
      .map(res => {
        return res.json()
      })
  }

  public getHeaders(){
    let headers = new Headers();
    headers.append('Authorization', `Bearer ${this.token}`);
    return headers;
  }
}

Я пыталсяиспользовать:

  encode_utf8(s) {
    return unescape(encodeURIComponent(s));
  }

  decode_utf8(s) {
    return decodeURIComponent(escape(s));
  }

Но это не сработало

У вас есть предложение?Большое спасибо.Ромен

1 Ответ

0 голосов
/ 20 ноября 2018

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

{'Content-Type': 'application / json;кодировка = UTF-8' }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...