4

我是软件领域的新手,请耐心等待我的问题和技术术语的错误:

前提:- 我使用 Angular4 开发了一个前端应用程序。在 Angular 应用程序中定义的 baseURL 是“ http://localhost:3000/ ”。我的应用程序使用 restangular api 与 json-server 交互(我创建了一个名为 json-server 的文件夹,它有 db.json 和 public 文件夹)。当我使用命令启动 json-server 时,它工作得很好: json-server json-server --watch db.json

我的应用程序已完成,因此我创建了一个生产版本。此后,我将所有文件从 dist 文件夹移动到 json-server 的 public 文件夹。当我启动 json-server 时,我的应用程序工作正常。

实际问题:- 现在我想在 azure 中托管。我只是从 json-server 文件夹中复制了所有文件/文件夹(db.json 和公用文件夹),并将它们放在天蓝色的云中。完成 azure 托管并在浏览器中打开 url 时出现错误-“您无权查看”。

为了纠正上述错误,我从 azure 中删除了所有文件,然后我复制了 dist 文件夹的所有文件并将它们放在 azure 云中。使用它,我可以在浏览器中看到应用程序,但看不到图像。在图像有一个错误 - 响应状态:0 对于 URL:null

当我在本地启动 json-server 时,一切正常,但当然,当从其他机器打开相同的网页时,我得到了同样的错误 - 响应状态:0 对于 URL:null

有什么方法可以在 azure 中运行 json-server,以便所有机器/移动设备在访问 url 时都能看到正确的网页而不会出现任何错误。

4

2 回答 2

7

逐步在 Azure Web App 上运行json-server :

  1. 打开浏览器并转到应用服务编辑器 ( https://<your-app-name>.scm.azurewebsites.net/dev/wwwroot/)

  2. 控制台中运行命令(Ctrl+Shift+C)

    npm install json-server --save-dev
    
  3. 将所有文件/文件夹(db.json和公用文件夹)放入 wwwroot 文件夹

  4. server.js用以下内容创建一个

    const jsonServer = require('json-server')
    const server = jsonServer.create()
    const router = jsonServer.router('db.json')
    const middlewares = jsonServer.defaults()
    
    server.use(middlewares)
    server.use(router)
    server.listen(process.env.PORT, () => {
      console.log('JSON Server is running')
    })
    
  5. 单击运行(Ctrl+F5),这将web.config自动生成文件并在浏览器中打开您的网站。

    在此处输入图像描述

于 2017-09-13T06:26:31.230 回答
-2

您可以使用以下内容快速设置一个模拟服务,该服务可以为静态 JSON 文件提供 REST API。

json服务器

只需安装 NodeJS 模块($npm install -g json-server)。以附加格式填充静态 json 文件,然后运行 ​​JSON 服务器 ($ json-server --watch db.json --port 3000)

于 2017-09-13T08:00:57.000 回答