Это потому, что вы забываете о нечувствительности к регистру:
Pattern regex = Pattern.compile("\\b[\\w.%-]+@[-.\\w]+\\.[A-Za-z]{2,4}\\b");
Это соответствует вашему примеру, хотя он игнорирует многие действительные электронные письма.
Я не вижу смысла в добавлении слоя абстракции в httpClient или что-то еще, что вы пытаетесь сделать. Тем не менее, вы должны взглянуть на Generics в Typescript .
function identity<T>(arg: T): T {
return arg;
}
Я думаю, что вы ищете Generics .
// child
getMovies(): Observable<Movie[]> {
return this.super.get<Movie[]>(this.endpoint);
}
// parent
get<T>(endpoint: string): Observable<T> {
return this.http.get<T>(endpoint);
}