Как сделать веб-вызов API для propublica.org из сервиса angular - PullRequest
1 голос
/ 07 октября 2019

Я пытаюсь получить информацию из api конгресса propublica.org из службы Angular 8.

Будучи новичком в вызовах Http для внешнего веб-API, я с трудом читаю документацию, найденную здесь: https://projects.propublica.org/api-docs/congress-api/#requests

Лучшая вещь, которую я смог найти, которая показывает, как сделать звонокздесь: https://gist.github.com/renderorange/f2a8bd0ffc6eeefe79f13de684631387

Но я не могу понять, как перевести это на использование Angle's HttpClient.

Я звоню в службу из компонента. Я дошел до того, чтобы настроить его структуру. Тем не менее, я запутался по поводу ссылки propublica на jsonp в их документации. Я попытался использовать jsonp от angular, но это не относится к примеру вызова javascript в ссылке выше.

В компоненте я пытаюсь зарегистрировать ответ


    this.CongressService
      .getStateCounts()
      .subscribe(data=>console.log(data));

Служба

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http'

import { PropublicaKey } from '../../assets/config/propublica'

@Injectable({
  providedIn: 'root'
})
export class CongressService {

  constructor(private HttpClient:HttpClient) { }

  getStateCounts() {
    let options = {
      url: 'https://api.propublica.org/congress/v1/states/members/party.json',
      headers: {
        'X-API-Key': 'my-api-key'
      },
      json: true
    };

    return this.HttpClient.jsonp(options.url, headers);
  }
}

Цель состоит в том, чтобы зарегистрировать данные, чтобы я знал APIзвонок работает.

Спасибо за помощь!

1 Ответ

0 голосов
/ 07 октября 2019

Возвращать this.HttpClient.get (url, options)

...