2017-11-22 18 views
0

난 다음입니다 this tutorial (공식 주제 Angular2 "빠른 시작"튜토리얼) 그것의 끝에Angular2 - InMemoryWebApiModule을 사용하여 끝점을 구성 할 수있는 위치는 어디입니까?

, 대신 호출의 HTTP 요청 (... GET, POST, PUT 등 DELETE)의 부부가있다 실제 서버는 app.module.ts이 라인을 사용하여 시뮬레이션 : 여기

// The HttpClientInMemoryWebApiModule module intercepts HTTP requests 
// and returns simulated server responses. 
// Remove it when a real server is ready to receive requests. 
HttpClientInMemoryWebApiModule.forRoot(
    InMemoryDataService, { dataEncapsulation: false } 
) 

응용 프로그램에 의해 만들어진 HTTP 요청의 예입니다

private heroesUrl = 'api/heroes'; // URL to web api 

    /** GET heroes from the server */ 
    getHeroes(): Observable<Hero[]> { 
    return this.http.get<Hero[]>(this.heroesUrl) 
     .pipe(
     tap(heroes => this.log(`fetched heroes`)), 
     catchError(this.handleError('getHeroes', [])) 
    ); 
    } 

질문 다음을 구성 할 수있는 방법이 이 InMemoryDataService에서 예상되는 종단점은 무엇입니까? 예를 들어, URL을 api/heroes/getAll으로 변경할 수 있습니다.

+0

[this] (https://github.com/angular/in-memory-web-api)는 당신이 찾고있는 것이라고 생각합니다. –

답변

0

@Szarik 권장 사항을 따르면, 나는 대답을 가지고 this link을 따른다. 사실, 내가 사용하고있는 도서관의 공식 사양은 다음과 같습니다

당신하여 기본 파서를 대체 할 수 있습니다 : 인 - 메모리 웹 API를 README.md에 약간의

다이빙, 우리는이 도달 InMemoryDbService에 parseRequestUrl 메서드를 구현합니다.

서비스는 두 개의 인수를 사용하여 메서드를 호출합니다.

  1. URL - 기본 구문 분석기를 포함 RequestInfoUtilities의 유틸리티 메소드 객체 -
  2. requestInfoUtils는 요청 URL 문자열입니다. 구문 분석의 결과에 따라 일부 값이 아직 설정되지 않았습니다.

메소드는 ParsedRequestUrl 객체 또는 null | undefined를 반환해야합니다.이 경우 서비스는 기본 파서를 사용합니다. 이 방법으로 일부 URL을 가로 채고 구문 분석하고 다른 URL을 기본 파서로 남겨 둘 수 있습니다.

그래서 그랬습니다!