角度http.get不';无法使用本地json文件

角度http.get不';无法使用本地json文件,json,angular,http-get,Json,Angular,Http Get,我有一个演示angular应用程序,它有一个api/products/products.json文件,用于http.get()。但是,当我制作自己的组件和服务来访问自己的自定义本地json时,在Chrome控制台中会出现404错误。即使json文件与服务位于同一目录中,并且使用了http.get(numbers.json),它也不起作用,只有将它放在api文件夹下,如api/numbers.json,它才起作用。Angular是否有一条规则,规定http消费的本地json必须存在于api文件夹下

我有一个演示angular应用程序,它有一个
api/products/products.json
文件,用于
http.get()
。但是,当我制作自己的组件和服务来访问自己的自定义本地json时,在Chrome控制台中会出现404错误。即使json文件与服务位于同一目录中,并且使用了
http.get(numbers.json)
,它也不起作用,只有将它放在
api
文件夹下,如
api/numbers.json
,它才起作用。Angular是否有一条规则,规定http消费的本地json必须存在于
api
文件夹下


编辑:发现将文件放在“资产”文件夹下可以工作,但如果创建自定义文件夹,则无法工作。

如果使用CLI,则需要在此处添加文件夹:

  "assets": [
    "assets",
    "api",
    "favicon.ico"
  ],

这是angular cli.json文件的一部分。

如果您使用的是angular cli 将json文件添加到资产文件夹中 并添加此项以获取
this.http.get('./assets/products.json')


通过这种方式可以看出

很好,这很有效,但是为什么我需要重新启动
ng serve
才能使其生效呢?我的猜测是,由于这是配置文件的一部分,因此它只有在启动时才被读取。所以你必须重新开始使用ng发球。遗憾的是,它对我不起作用!该文件似乎未打包到Web包中。我需要你的webpack.config.js文件