【问题标题】:How to mimic receiving data from a server when data and server are local?当数据和服务器在本地时,如何模拟从服务器接收数据?
【发布时间】:2019-07-22 19:16:08
【问题描述】:

我不知道怎么问这个问题,但是我有一个 react redux 项目,它展示了一些具有过滤和排序等功能的产品

我创建了一个代表数据的 json 文件,我需要模拟从我已经使用 express 创建的服务器接收这些数据,就好像我从远程服务器接收数据一样。

我对后端一无所知,所以我很困惑我该怎么做,我觉得有一个丢失的部分,所以我无法在数据和服务器和项目之间建立连接。

实现这一目标的关键是什么??

【问题讨论】:

  • 您可以使用 myjson(myjson.com) 并在那里上传您的 JSON 数据。您可以将该数据用作 api。
  • 谢谢,有办法在本地实现吗??

标签: json reactjs api redux server


【解决方案1】:

正如我在上面评论的那样,要么使用 myjson,要么你可以使用 json-server 包。

在您的项目文件夹中,您只需要创建一个 json 文件 ex. local-api.json

例如:

{
  "posts": [
    { "id": 1, "title": "json-server", "author": "typicode" }
  ],
  "comments": [
    { "id": 1, "body": "some comment", "postId": 1 }
  ],
  "profile": { "name": "typicode" }
}

你可以这样运行它:

json-server --watch local-api.json

注意:示例取自那里以便您理解。你可以在他们的 GitHub 网站上探索更多关于这个包的信息

更多参考请访问 GitHub 站点:here

Express 服务器示例

const express = require('express')
const app = express()
const port = 5000

app.get('/', (req, res) => res.json({"hello":"world"})) //add your data

app.listen(port, () => console.log(`Example app listening on port ${port}!`))

使用 node index.js 运行这个文件并确保你安装了 express( npm install express --save) 然后你可以像这样获取你的组件:

componentDidMount(){
axios.get("http://localhost:5000").then(data => //your logic)
}

【讨论】:

  • 谢谢,这真的很有帮助,但该项目的目的是教育,我需要编写一些代码来建立连接,我需要在不使用任何工具的情况下实现,我该怎么做那个??
  • 那么只有你可以通过创建本地服务器来做到这一点。并向其发出 api 请求。例如:您的服务器在端口 5000 上运行,您可以发出类似 localhost:5000 的请求,然后您可以从那里返回您的 JSON
  • 您能否将此部分添加到原始答案中并提供一些详细信息,以便我可以理解更多并接受您的回答。谢谢,这真的很有帮助
  • 我已经更新了我的代码。如果您有任何疑问,请告诉我
猜你喜欢
  • 2019-06-02
  • 1970-01-01
  • 1970-01-01
  • 2019-04-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-16
相关资源
最近更新 更多