2016-11-07 8 views
0

次Angular2 JobServiceの実装はエラーを返します:サービスで定義されてこの角度2のサービスの実装で何が問題になっていますか?

job.service.ts:26 An error occurred Response {_body: Object, status: 404, ok: false, statusText: "Not Found", headers: Headers…}

jobsUrl変数は、ブラウザのアドレスバーから直接提出されたときにジョブのJSONの結果は結果を返します。どのような問題が起こっているのでしょうか?

import { Injectable } from '@angular/core'; 
import { Headers, Http } from '@angular/http'; 

import 'rxjs/add/operator/toPromise'; 

import { JobsResult } from './jobs-result'; 

@Injectable() 
export class JobService { 

    private headers = new Headers({'Content-Type': 'application/json'}); 
    private jobsUrl = 'http://service.dice.com/api/rest/jobsearch/v1/simple.json?text=javascript'; 
    //private jobsUrl = 'app/jobs'; // URL to web api 

    constructor(private http: Http) { } 

    getJobs(): Promise<JobsResult>{ 
    return this.http.get(this.jobsUrl) 
       .toPromise() 
       .then(response => response.json().data as JobsResult) 
       .catch(this.handleError);  
    } 

    private handleError(error: any): Promise<any> { 
    console.error('getJobs() not working'); 
    console.error('An error occurred', error); // for demo purposes only 
    return Promise.reject(error.message || error); 
    } 
} 
+0

としてデータを持っていないあなたはどこかhttpsのようなあなたの問題の本当のデモを与えることができます:// plnkr .co /? – Majid

+0

角度送信はどのヘッダですか?あなたの要求に実際にヘッダーを設定していないことがわかります。 – Brad

答えて

1

データが定義されていない、応答はキー

.then(response => response.json() as JobsResult) 

代わりの

.then(response => response.json().data as JobsResult) 
関連する問題