首页 > 其他分享 >json-server 快速搭建REST API 服务器

json-server 快速搭建REST API 服务器

时间:2024-06-11 15:54:48浏览次数:28  
标签:http REST server json API 3000 localhost

json-server 快速搭建REST API 服务器

★ 认识json-server 官方文档参考

	json-server 是一个非常流行的开源工具,用于快速搭建一个完整的 REST API 服务器。它使用 JSON 文件作为数据源,通过简单的配置即可模拟复杂的服务器功能,非常适合前端开发者在没有后端支持的情况下进行开发和测试。

★ 主要特性

  • 零编码:只需一个简单的 JSON 文件,你就可以创建一个完整的 API,无需编写任何后端代码。
  • 灵活性:支持 GET, POST, PUT, PATCHDELETE 请求,可以处理各种 RESTful 请求。
  • 即时变更:对 JSON 文件的任何修改都会即时反映在 API 返回中,无需重启服务器。
  • 路由定制:可以通过配置文件自定义路由,模拟各种 API 路径和行为。
  • 中间件支持:可以使用 Express 中间件来增加额外的功能,如添加 headers、静态文件服务等。
  • 低系统要求:由于其简单性,json-server 对系统资源的要求非常低,非常适合快速原型开发和小型项目。

★ 使用步骤

  • 1-安装 json-server (需要先安装node)
    npm install -g json-server
    
  • 2-创建一个 JSON 文件 eg:db.json
    {
      "posts": [
        { "id": "1", "title": "a title", "views": 100 },
        { "id": "2", "title": "another title", "views": 200 }
      ],
      "comments": [
        { "id": "1", "text": "a comment about post 1", "postId": "1" },
        { "id": "2", "text": "another comment about post 1", "postId": "1" }
      ],
      "profile": {
        "name": "typicode"
      }
    }
    
  • 3-创建一个用于存放静态文件的目录,通常命名为 publicstatic
  • 4-启动 json-server
    • 启动说明:

      1. 使用 --static 标志来指定静态文件目录。如果你没有指定,json-server 默认会查找名为 public 的目录
      2. API 数据由 db.json 提供,静态文件服务由 public 目录提供
      3. npx 是一个 npm 包运行器,它允许你运行在本地 node_modules 目录或远程仓库中的命令。使用 npx json-server 启动的方式不需要你全局安装 json-server
      
    • 启动方式一: 在 Powershell 窗口中运行

      json-server --watch [json文件所在路径] --static ./public
      
    • 启动方式二:

      npx json-server [json文件所在路径] --static ./public
      
  • 5-API接口说明
    • 索引页路由

      http://localhost:3000/
      
    • API 数据资源路由 (支持GET/POST/PATCH/DELETE)

      http://localhost:3000/posts
      http://localhost:3000/posts/1
      http://localhost:3000/comments
      http://localhost:3000/comments/1
      http://localhost:3000/profile
      
    • 静态文件资源路由

      http://localhost:3000/index.html
      http://localhost:3000/favicon.ico
      

标签:http,REST,server,json,API,3000,localhost
From: https://www.cnblogs.com/cs-songbai/p/18242194

相关文章

  • nginx+lua(OpenResty),实现访问限制
    因发现平台日志中不定时会有同一IP发送大量的正常请求的情况,因程序没做请求频率的限制,就打算使用nginx+lua(OpenResty)+redis来做控制,发现请求频率高的IP,直接封掉,禁止访问。一、部署OpenResty1、安装工具和依赖yum-yinstallwgetvimgccpcre-developenssl-devel......
  • presto 查询调度流程 (Coordinator Scheduler)
    basedontag:0.287presto的scheduler是SqlQueryScheduler这个类控制的,这个class主要是负责调度物理执行计划。调度具体的每个SqlStageExecution.这个Stage可以当成Fragment的一个概念他会先把所有的stage创建一个schedule计划。一共有两种schedule计划,一个是all-at-on......
  • Navicat导入json文件(json文件数据导入到MySQL表中)
    天行健,君子以自强不息;地势坤,君子以厚德载物。每个人都有惰性,但不断学习是好好生活的根本,共勉!文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。文章目录一、介绍二、准备工作1.工具2.建表3.Json文件三、JSON文件数据导入MySQL表1.导入文件入口2.......
  • 如何解决系统时间同步失败:Unable to sync time with NTP server
    如何解决系统时间同步失败:UnabletosynctimewithNTPserver......
  • server-1.0-SNAPSHOT.jar中没有主清单属性
    server-1.0-SNAPSHOT.jar中没有主清单属性问题出在<pluginManagement></pluginManagement>标签内部插件配置无效,导致spring-boot-maven-plugin未生效。因此,在执行mvncleanpackage后,尝试运行JAR文件时会出现错误。解决方法是移除<pluginManagement>标签,直接在<build>......
  • windows server系统物理机虚拟化迁移至ESXi 8.0
    项目场景:客户公司服役15年的3台老服务器,因为设备过于老旧,随着数据量的不断增大以及业务复杂程度不断提高,老旧服务器面临升级换代的需求。但是系统提供商已经不再提供老系统的部署服务,更换新版MIS系统造价大约需要20W(只软件升级费用)。于是提出服务器虚拟化的解决方案,总造价......
  • Ubuntu 24.04 LTS 安装配置 MySQL Community Server 8.4.0 LTS
    1安装 AptRepository​​​​​​​地址MySQL::DownloadMySQLAPTRepositorysudodpkg-imysql-apt-config_0.8.30-1_all.deb #安装mysql8.4ltssudoaptupdatesudoapt-getinstallmysql-server#修改mysqlroot密码策略 2查看版本test@test:~$my......
  • vivado HW_SERVER
    HW_服务器描述硬件服务器管理到硬件目标的连接,例如硬件板,包含一个或多个XilinxFPGA设备的JTAG链,用于编程和调试您的FPGA设计。使用open_hw命令打开硬件管理器时,可以连接到硬件服务器,本地或远程,使用connect_hw_server命令。这启动hw_server应用程序,并创建一个hw_server......
  • route_localnet decides whether a loopback-hosting server can server requests out
    BackgroundWhenIwasfollowingtheRAGexamplepromptflow-resource-hubtotracemyapplicationthroughapromtflowserverhostedontheloopbackinterface,asthelocalenvisavirtualmachineonAzure,andafterIaddNSGruletoallowtherequeststo......
  • Serverless部署应用并使用Cloudflare加速和支持HTTPS
    ServerlessServerless是一种云计算模型,它使开发人员能够构建和运行应用程序,而无需关心底层的服务器基础设施。在传统的应用程序开发中,开发人员需要管理服务器的配置、扩展和维护等任务。而在Serverless模型中,这些任务都由云服务提供商来处理,开发人员只需专注于编写应用程序的......