2016-08-02 14 views
-1

トークンとその他の情報を含むjsonオブジェクトを返すauthエンドポイントに資格情報を持つhttp投稿を行うログインコンポーネントをモックしようとしています。InMemoryBackendServiceエラーcollection.reduceが関数ではありません

ここ

error:"collection.reduce is not a function" 

は私のシードデータファイルが

export class AppData { 
    createDb() { 
    let auth = { 
     access_token: '2YotnFZFEjr1zCsicMWpAA', 
     token_type: 'bearer', 
     expires_in: 3500 
    }; 
    return {auth}; 
    } 
} 

です...さらに検査時に、私は応答の本文でより多くの情報を参照して、「500内部サーバーエラー」応答を取得auth.service.ts

public authenticateUser(user:string, pass:string):Promise<AuthResponseModel> { 


    // TODO: Hit auth endpoint 
    let authUrl = 'app/auth'; 
    let headers = new Headers({ 'Content-Type': 'application/json' }); 
    let options = new RequestOptions({ headers: headers }); 
    let body = JSON.stringify({ username: user, password: pass}); 

    return this.http.post(authUrl, body, options) 
     .toPromise() 
     .then((res: Response) => { 
      let body = res.json(); 
      return body.data || { }; 
     },(reason:any) => { 
      console.log('authenticateUser() error %o ', reason); 
      return Promise.reject(reason); 

     }) 
     .catch(this.handleError); 


} 

答えて

0

InMemoryBackendServiceはコレクションでのみ動作します。したがって、単純なCRUDエンドポイント以外のサービスを模倣することはかなり役に立たない。

関連する問題