25 lines
632 B
TypeScript
25 lines
632 B
TypeScript
// Create the query string by hand
|
|
// #docregion
|
|
import {Injectable} from 'angular2/core';
|
|
import {Jsonp} from 'angular2/http';
|
|
|
|
@Injectable()
|
|
export class WikipediaService {
|
|
constructor(private jsonp: Jsonp) { }
|
|
|
|
// TODO: Add error handling
|
|
search(term: string) {
|
|
|
|
let wikiUrl = 'http://en.wikipedia.org/w/api.php';
|
|
|
|
// #docregion query-string
|
|
let queryString =
|
|
`?search=${term}&action=opensearch&format=json&callback=JSONP_CALLBACK`
|
|
|
|
return this.jsonp
|
|
.get(wikiUrl + queryString)
|
|
.map(request => <string[]> request.json()[1]);
|
|
// #enddocregion query-string
|
|
}
|
|
}
|