json server的简单使用(附:使用nodejs快速搭建本地服务器)

作为前端开发人员,经常需要模拟后台数据,我们称之为mock。通常的方式为自己搭建一个服务器,返回我们想要的数据。json server 作为工具,因为它足够简单,写少量数据,即可使用。

安装

首先需要安装nodejs,建议使用最新版本。然后全局安装json server.

npm install json-server -g

安装完成后可以用

json-server -h 

命令检查是否安装成功,成功后会出现json-server相关的参数选项。

运行

安装完成后,可以在任一目录下建立一个 xxx.json 文件,例如在 mock/ 文件夹下,建立一个 db.json 文件,并写入以下内容,

{
    "news": [
        {
            "id": 1,
            "title": "曹县宣布昨日晚间登日成功",
            "date": "2016-08-12",
            "likes": 55,
            "views": 100086
        },
        {
            "id": 2,
            "title": "长江流域首次发现海豚",
            "date": "2016-08-12",
            "likes": 505,
            "views": 9800
        }
    ],
    "comments": [
        {
            "id": 1,
            "news_id": 1,
            "data": [
                {
                    "id": 1,
                    "content": "支持党中央决定"
                },
                {
                    "id": 2,
                    "content": "抄写党章势在必行!"
                }
            ]
        }
    ]
}

并在 mock/ 文件夹下执行:

 json-server -w db.json -p 3003 

操作数据

GET

这个时候访问 http://localhost:3003/db 可以查看 db.json 文件中所定义的全部数据。

使用浏览器地址栏,jQuery.get 或 fecth({method: "get"}) 访问 http://localhost:3003/news ,则可以看到 news 对象下的数据,以Array格式返回:

[
    {
        "id": 1,
        "title": "曹县宣布昨日晚间登日成功",
        "date": "2016-08-12",
        "likes": 55,
        "views": 100086
    },
    {
        "id": 2,
        "title": "长江流域首次发现海豚",
        "date": "2016-08-12",
        "likes": 505,
        "views": 9800
    }
]

POST

以jquery的 $.ajax 方法举例,以下代码会实时的向 db.json 中的 news 对象push一条新的数据再次用 get 方式访问http://localhost:3003/news , 就可以看到它了

$.ajax({ type: ‘post‘, url: ‘http://localhost:3003/news‘, data: { "id": 3, "title": "我是新加入的新闻", "date": "2016-08-12", "likes": 0, "views": 0 } } 

使用动态数据

使用 db.json 作为数据载体,虽然方便,但是如果需要大量的数据,则显得力不从心。

幸好 json server 可以通过js动态生成json格式数据,官方例子为生成1000组user数据:

# /mock/db.js

module.exports = function() {
    var data = {
        users: []
    }
    for (var i = 0; i < 1000; i++) {
        data.users.push({
            id: i,
            name: ‘user‘ + i
        })
    }
    return data
}

/mock 目录下运行

json-server db.js -p 3003

我们访问 http://localhost:3003/news/ 看到的数据是

[
    {
        "id": 0,
        "name": "user0"
    },
    {
        "id": 1,
        "name": "user1"
    },
    {
        "id": 2,
        "name": "user2"
    },
    {
        "id": 3,
        "name": "user3"
    },
    ...
    {
        "id": 999,
        "name": "user999"
    }
]

以上内容大部分来自于网上其他网友的总结,此处只是方便日后自己查看。

附:

作为前端开发人员,有些时候需要搭建一个本地服务器!传统搭建服务器的操作比较繁杂,比如需要安装apache软件等。在此给大家介绍一种比较简单的的搭建本地服务器的方法。

1、安装最新版的nodejs。

2、安装好nodejs之后,打开cmd窗口, 输入

npm install anywhere -g 

全局安装anywhere依赖包。

3、在cmd中进入到需要搭建服务器的目录中(目录最好不要有中文),输入

anywhere 8080

此处的端口号可以根据自己的实际情况来指定,命令执行成功之后浏览器就会自动打开本地服务器目录,一个简单的node服务器就这样搭建好啦!是不是很简单啊~

赶快动手搭建一个自己的本地服务器吧~~~

时间: 2024-08-08 18:12:55

json server的简单使用(附:使用nodejs快速搭建本地服务器)的相关文章

如何使用nodejs快速搭建本地服务器

1.首先要安装好node,js 2.以下有安装包下载的链接:这里的安装包是.msi,如果要其他的,可以到菜鸟教程上去找 32 位安装包下载地址 : https://nodejs.org/dist/v4.4.3/node-v4.4.3-x86.msi: 64 位安装包下载地址 : https://nodejs.org/dist/v4.4.3/node-v4.4.3-x64.msi: 3.安装好了,我们打开cmd,输入命令行1:node -v,    这里是查询node版本,如果出现以下界面说明已经

vue+elementUI框架,nodejs+router搭建本地服务器,数据库用mongoose,axios请求碰到的一些问题

在做这个项目练手时碰到的一些问题记录一下,加深印象 服务器的目录层级如下: 一.简单的搭建一个服务器,如何划分路由 1.在搭建好的后端服务器  app.js 中导入路由,代码如下: var express = require('express') // 导入路由 用户 var user = require('./router/user.js') var app = express() app.use(express.static('public')) // 在路由配置前添加以下代码 解决跨域问题

拿nodejs快速搭建简单Oauth认证和restful API server攻略

拿nodejs快速搭建简单Oauth认证和restful API server攻略:http://blog.csdn.net/zhaoweitco/article/details/21708955 最近一直在鼓捣这个东西,拿出来分享下一下经验吧,其实很简单,一点也不难. 首先需求是这样,给自己的网站要增加API服务,API分为两种,公共的和私有授权的,授权的使用Oauth方法认证身份,API格式均为JOSN和JSONP. 嗯,别的语言我也没怎么学过,首先是找合适的框架进行实现吧.本身网站使用的e

微信小程序开发入门(一),Nodejs搭建本地服务器

1.  如何模拟真实环境中,读取服务端数据,首先需要使用Nodejs搭建一个本地服务器的环境. 在搭建web服务器之前,需要先安装node.js(安装版本最好为6.9.x) 安装后node.js,接下来就需要安装http的镜像文件 npm install http-server -g(windows下)sudo npm install http-server -g(linux和mac下)接下来在桌面创建一个文件夹 cd 文件夹名字http-server这时候,就会显示在8080端口下运行的一个本

使用nodejs分别搭建一个服务器和客户端,模拟问答精灵

嘻嘻.最近在玩nodejs,在我的学习以及理解中nodejs的执行环境主要是分为三个部分的,首先会有一个global的全局对象,然后在这个全局对象中又包含有一个核心模块和文件模块(可以理解为是用户自己写的文件)的. 并且nodejs具有两个特点的,那就是1.是一个非阻塞的I/O模型,也就是说nodejs的操作是异步的.2.是基于事件驱动的程序设计思想的. 今天主要是通过自己搭建服务器和客户端,让两者之间进行通信,模拟出类似问答精灵的一个效果的.在这之前,我们是很有必要了解一下服务器与浏览器之间是

用nodejs http-server搭建本地服务环境

一.本地环境,不包括域名的方法: https://www.npmjs.com/package/http-server(参考手册) 正确使用方法: 二.带域名的配置方法: https://cnodejs.org/topic/50d41da5637ffa4155f63179和http://blog.csdn.net/yuan882696yan/article/details/25052469(参考方法) nodejs通过代理(proxy)发送http请求(request): 方法一: request

nodeJS搭建本地服务器

准备工作: Node JS: 1:安装全局express:在express4.x版本中,安装时语句变为了这样: npm install -g express npm install -g express-generator 2:创建项目: 选择模板:ejs jade Express name -ejs cd name npm install 3:启动项目: Npm start node路由设置 1:添加一条路由步骤:    1:请求路由文件,require    2:配置路由-- app.use

巨杉Tech | 使用 SequoiaDB + Docker + Nodejs 搭建 Web 服务器

容器化技术的出现大大简化了应用开发人员在构建底层基础设施的工作.SequoiaDB 巨杉数据库于3.2.1版本正式推出了 Docker 容器化部署方案,本文将会基于 SequoiaDB 巨杉数据库与Nodejs的 Docker 镜像搭建一个简易的 Web 服务器. 1.规划部署我们将会搭建一个三分区三副本的高可用 SequoiaDB 巨杉数据库.同时,我们将会创建一个 SequoiaDB 巨杉数据库的 MySQL 实例,用以提供 Nodejs 作为数据源. 容器角色 容器名/IP:端口 分区组

web前端效率提升-nginx+nodejs搭建本地生态

1.起因 编写的项目是一个偏向于后台管理的web系统,使用了angular框架,在绑定数据的时候就依赖于后台的接口格式. 以前是后台写好接口后,我在绑定,在这之前一些逻辑是没法做的,有时候后台接口给的慢,就要绑定假数据写死在js里面, 感觉非常被动,后台接口.服务器出个错什么的,我的进度就要被拖延,返回的格式不友好,或者返回的格式和传递的格式不一样的时候,我还要转格式. 人家拍拍屁股说接口写好了,回家休息,我就要加班来写代码. 2.解决思路 返回格式和接受格式,已表单提交为例 <input ng