Как изменить тип метода API в apollo-angular - PullRequest
0 голосов
/ 06 марта 2019

Я использую угловой клиент Apollo для вызова API в угловых. Некоторые API имеют тип POST, а некоторые - тип GET, и я хочу изменить тип метода API согласно API (GET или POST). Я новичок в этом, поэтому, пожалуйста, помогите мне,мой код:

export class AppModule {

  constructor(
    apollo: Apollo,
    private httpLink: HttpLink
  ) {
    const auth = setContext((_, { headers }) => {
      const token = sessionStorage.getItem('token');
      if (!token) {
        return {};
      } else {
        return {
          headers: headers.append('Authorization', token)
        };
      }
    });
    const http = this.httpLink.create({ uri: '/api/graph', method: 'GET' });
    apollo.create({
      link: auth.concat(http),
      cache: new InMemoryCache()
    });
  }

}
  1. Метод API (тип GET):

    constructor(private router: Router,
        private apollo: Apollo,
        private appService: AppService) {
      }
    
      login() {
        this.apollo.query({query: MyQuery })
          .subscribe((data) => {
            if (data['data']) {
               console.log(err);
            }
          },
            err => {
              console.log(err);
            });
      }
    
  2. Код метода API (тип POST):

    this.apollo.query ({query: MyQuery}) .subscribe ((data) => {console.log (data);}, err => {console.log (err);});

Я не могу вызвать метод 2 (метод типа POST), потому что экземпляр создан как тип GET, и я хочу изменить его в соответствии с моим типом метода API

Пожалуйста, помогите мнес этим ..

1 Ответ

0 голосов
/ 15 мая 2019

Вы хотите сделать запрос Graphql, используя get?Или только хотите сделать запрос на получение?в этом случае вы должны использовать httpclientmodule

...