HTTP的不同结果调用具有相同集合名称的angular2-in-memory-web-api

Bla*_*ake 5 http angular

我想在我的角度2项目中使用angular2-in-memory-web-api.我找不到任何文档来查看如何为具有相同集合名称的不同请求返回不同的数据对象.我相信我用于SEED_DATA的课程已关闭,但我不确定如何以正确的方式构建它以获得我想要的东西.

这是我的主要内容

import {provide} from "@angular/core";
import {bootstrap} from "@angular/platform-browser-dynamic";
import {HTTP_PROVIDERS, XHRBackend} from "@angular/http";
import {AppComponent} from "./app.component";
import {SEED_DATA, InMemoryBackendService} from "angular2-in-memory-web-api/in-memory-backend.service";
import {AppTestData} from "./AppTestData";

bootstrap(AppComponent, [
    HTTP_PROVIDERS,
    provide(XHRBackend, {useClass: InMemoryBackendService}),
    provide(SEED_DATA, {useClass: AppTestData})
]);
Run Code Online (Sandbox Code Playgroud)

我的AppTestData.ts文件看起来像这样

export class AppTestData {
    createDb() {
        let studentData = {
            name: "Student Name",
            grade: "B"
        };
        let otherStudentData = {
            name: "Other Student Name",
            grade: "A"
        };


        let httpPaths = {
            somepath: {
                student: studentData,
                anotherPath: {
                    student: otherStudentData
                }
            }
        }
        return httpPaths;
    }
}
Run Code Online (Sandbox Code Playgroud)

我对httpPaths对象的尝试已关闭.但是这个想法是我调用一个获取http调用"something/student"并返回studentData并调用另一个调用http调用"something/anotherPath/student"并返回otherStudentData.

以下似乎确实有效但我想指定我的完整路径,我想发布到"某事/学生"和"某事/另一路/学生"并得到不同的结果.

let httpPaths = {
            student: studentData
    }
Run Code Online (Sandbox Code Playgroud)

小智 4

我相信您错过了返回语句中的括号:

return {httpPaths};
Run Code Online (Sandbox Code Playgroud)

开发人员创建了一个示例,可以在此处找到