【Yapi】Window10 超详细安装 Yapi 教程

2023-11-02

目录

问题一:Error: getaddrinfo ENOTFOUND yapi.demo.qunar.com yapi.demo.qunar.com:80 错误处理

问题二:Npm 安装 Yapi 的时候,想指定安装目录,结果一直提示 EPERM: operation not permitted, mkdir

1、Yapi 是什么?

2、Yapi 安装环境

3、Yapi 安装

3.1 nodejs 下载

3.2 nodejs 安装(注意一定要安装版本小于v15.0)

3.2 npm 安装(注意不要安装最新版)

3.3 MongoDB 安装

3.4 Yapi安装

4、参考文档


问题一:Error: getaddrinfo ENOTFOUND yapi.demo.qunar.com yapi.demo.qunar.com:80 错误处理

答案参考:

2021-05-18_zhengccxx的博客-CSDN博客

YApi 安装出现问题请看这里 · Issue #16 · YMFE/yapi · GitHub

yapi 需要在node环境下来进行安装,但是这里有一个很坑的事情,我们安装的node版本不能高于v15,我最后使用的是node-v14.8.0-x64.msi版本

当我使用v15+版本的node安装yapi的配置服务的时候,会一直卡住,无法进行下去,各位大佬如果知道什么原因,欢迎评论,非常感谢

由于自己刚开始在电脑是安装了node最新版v18.0.0,在最后一步,安装yapi的时候一直卡住,简直崩溃,静下心来,不断搜索,总算解决了,好坑。

希望各位想安装Yapi的小伙伴不要重蹈覆辙!!!

问题二:Npm 安装 Yapi 的时候,想指定安装目录,结果一直提示 EPERM: operation not permitted, mkdir

EPERM: operation not permitted, mkdir 解决方案

1、Yapi 是什么?

Yapi 由 YMFE开源,旨在为开发、产品、测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建、发布、维护API。

YAPI 是由去哪儿网移动架构组(简称YMFE,一群由FE、iOS和Android工程师共同组成的最具想象力、创造力和影响力的大前端团队)开发的可视化接口管理工具,是一个可本地部署的、打通前后端及QA的接口管理平台。有了YAPI,我们可以很方便的测试、管理和维护多个项目的API接口,YAPI是一个独立的服务平台。

2、Yapi 安装环境

系统:Windows10

安装环境:node环境+mongodb数据库(yapi系统需要部署在node环境中,且使用mongodb进行数据库存储。)

安装包版本:

Node:node-v14.8.0-x64.msi

npm:6.14.7(Node Package Manager,Node包管理工具)

MongoDB:mongodb-windows-x86_64-5.0.9-signed.msi

Yapi:1.10.2

3、Yapi 安装

3.1 nodejs 下载

下载node-v14.8.0-x64.msi,注意!!!这里一定要选择v15以下的版本

3.2 nodejs 安装(注意一定要安装版本小于v15.0)

双击 下载的 msi 文件,node-v14.8.0-x64.msi ,一直点下一步,有需要的可以选择指定的安装目录

3.2.1 查询node是否安装成功

node -v 查看node当前安装版本

3.2 npm 安装(注意不要安装最新版)

  • 打开Windows系统下的 cmd 命令窗口
npm -g install npm@6.14.7  // 安装指定版本

  • 查看是否安装成功

3.3 MongoDB 安装

3.3.1 MongoDB下载

MongoDB Community Download | MongoDB

  • 下载社区版

我下载的是:mongodb-windows-x86_64-5.0.9-signed.msi

3.3.2 mongodb 安装

  1. 创建一个data目录
  2. 创建一个log目录
  3. 安装的时候需要设置

双击mongodb-windows-x86_64-5.0.9-signed.msi,一直点下一步,可以自己选择安装目录

  • 设置 data 和 log 目录

  • 然后一直点下一步,点击install,等待安装成功。注意勾选 MongoDB Compass这个是mongodb的可视化工具,方面执行mongodb命令

3.3.3 MongoDB Compass 的使用

  • 打开 MongoDB Compass 工具,如下所示,在这里可以执行MongoDB命令

3.3.4 MongoDB 环境变量

  • MongoDB 安装目录

MongoDB 设置环境变量,具体如何设置,可以自行百度,这里就不叙述了。

3.3.5 验证mongodb版本

mongo -version // 查看mongo 是否安装成功

3.3.6 启动MongoDB

net start mongodb  // MongoDB服务启动命令

不过我使用 net start mongodb 启动的时候失败了,怀疑是安装mongo的时候,指定的服务名称不是叫mongodb,所以启动不成功

  • 那么如何启动呢?

解决方案: Ctrl + R,输入services.msc,搜索 MongoDB,点击启动,如图所示,就是启动成功的页面

  • 使用MongoDBCompass连接mongodb,mobodb监听的端口是27017,如图所示:

  • mongodb 连接成功,如图所示:

到这里,我们mongodb就安装成功了,接下来就可以安装yapi了。

3.4 Yapi安装

有需要的,可以参考Yapi官方文档进行安装:

内网部署

这里采用方式一进行安装:可视化部署[推荐],各位同学也可以参考第二种方案

3.4.1 执行在线安装yapi命令,可以指定安装目录

  • 下面两条在线安装命令选择一条
npm install -g yapi-cli --registry https://registry.npm.taobao.org  // 在线安装Yapi

npm install --prefix E:\Software\Yapi -g yapi-cli --registry https://registry.npm.taobao.org // 指定安装目录,在线安装Yapi

3.4.2 启动Yapi

yapi server  // 启动Yapi服务

3.4.3 访问Yapi

http://localhost:9090/ // Yapi 访问地址

3.4.5 访问连接,进入Yapi配置安装服务,

进入配置安装服务之前,Mongo先创建账号,创建数据库

3.4.5.1 创建MongoDB账号和密码

# 创建账号、密码,设置读写权限
db.createUser({user:'admin',pwd:'admin',roles:['readWrite']}) 

# 验证账号和密码是否创建成功
db.auth("admin","admin")

3.4.5.2 创建 yapi 数据库和 yapi 集合

3.4.5.3 进入Yapi配置安装服务

填写刚才 在 mongodb 创建的数据库名、数据库用户名、数据库密码,点击开始部署,等待yapi部署成功

点击 开始部署 按钮,可能会卡住,可以看看console日志,看看哪里出了问题,一般都是开头两个问题导致,可以参考相应的解决方案。

3.4.5.4 安装成功

  • 最终安装成功

  • 安装成功之后,目录结果如图:

3.4.6 node 启动 yapi 服务

node vendors/server/app.js  // 启动yapi服务

3.4.7 访问Yapi服务

 http://localhost:3000

账号:设置的邮箱;初始管理员登录密码:ymfe.org

安装成功,登录成功,撒花!!!

终于安装成功了,中间遇到了一些问题,最大的问题还是node安装版本的问题,最后一步Yapi一直安装不成功,一直处于卡死,报错的状态,不过最后还是解决了,过程很漫长,但最终结果还是好的。

接下来就可以开始使用了,具体如何使用,推荐参考官方文档,写的已经很详细了,这里就不赘述了。

YApi 接口管理平台

4、参考文档

  1. YApi 接口管理平台

  1. https://github.com/YMFE/yapi/issues/16

  1. 内网部署

  1. Error: EPERM: operation not permitted, mkdir......_MajorMe的博客-CSDN博客

  1. 2021-05-18_zhengccxx的博客-CSDN博客

  1. Windows 环境下安装 Yapi 教程 - 昕憬 - 博客园

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【Yapi】Window10 超详细安装 Yapi 教程 的相关文章

  • 找不到“节点”的类型定义文件

    更新 Angular Webpack 和 TypeScript 后出现奇怪的错误 知道我可能会错过什么吗 当我使用 npm start 运行应用程序时 出现以下错误 at loader Cannot find type definition
  • nodemon 安装错误“没有可用于超时的有效版本”

    尝试在全新的节点项目中安装 nodemon 时出现此错误 我创建了一个名为 my project 的空白文件夹 然后 在其中 我执行了创建一个 package json 文件 npm init f 然后当尝试运行时 npm install
  • 下载中带有文件名的 NodeJS sendFile

    我尝试使用以下代码将文件发送给客户端 router get get myfile function req res next res sendFile other file name dat 它工作正常 但当用户从以下网址下载此文件时我需要
  • Nodejs Express中间件函数返回值

    我正在使用 NodeJS 和 Express 我有以下路线 中间件功能是Mobile 如果我不使用 return next 在 isMobile 函数中 应用程序会卡住 因为 NodeJS 不会移至下一个函数 但我需要 isMobile 函
  • 如何使用remark将markdown解析为json

    The 备注站点 https remark js org 有一个 AST 浏览器的链接 用于输出备注 https astexplorer net gist 0a92bbf654aca4fdfb3f139254cf0bad ffe102014
  • Mongod 错误(用自制程序安装)

    我已经安装了 mongodb brew install mongodb 已创建文件夹 mkdir p data db 处理权限 sudo chown R id un data db Run mongod 错误日志 2018 01 06T14
  • 如何配置 Google 计算引擎以对 Nodejs 服务器使用 HTTPS?

    我想使用 https SSL 在 google 计算引擎中运行 nodejs 和 socket io 服务器 我安装了自签名证书https cloud google com compute docs load balancing http
  • 在node.js中加载并执行外部文件

    从另一个节点js文件运行一个节点js文件是否容易 可能 例如 我有两个文件 test1 js 和 test2 js 我想从 test2 js 执行 test1 js 文件 我认为完成你想做的事情的更好方法是按照我的其他答案建议的去做 但是要
  • Azure VM 上的 MongoDb 连接超时

    将我的 Azure Web 应用程序连接到 Azure VM 上托管的 MongoDb 时 我遇到一些超时问题 2015 12 19T15 57 47 330 0100 I NETWORK Socket recv errno 10060 A
  • 通过 node-http-proxy 保留基于 cookie 的会话

    我有一个简单的基于 Express 的 Node js Web 服务器 用于开发 JavaScript 应用程序 我将服务器设置为使用 node http proxy 来代理应用程序向在不同域和端口上运行的 Jetty 服务器发出的 API
  • 未捕获的错误:找不到模块“jquery”

    我在用Electron https github com atom electron制作桌面应用程序 在我的应用程序中 我正在加载一个外部站点 Atom 应用程序之外 可以说http mydummysite index html http
  • 流星内存不足

    我正在使用流星来制作报废引擎 我必须执行一个 HTTP GET 请求 这会向我发送一个 xml 但这个 xml 大于 400 ko 我得到一个异常 内存不足 result Meteor http get http SomeUrl com 致
  • mongodb 获取最后插入的文档

    此 Meteor 代码尝试查找集合中的最后一个文档 find userId this userId sort createdAt 1 limit 1 但由于所有文档都是按时间顺序排列的 我想删除createdAt字段 所以一旦被 删除 是否
  • PrototypeJS 版本 1.6.0.2 覆盖 JSON.parse 和 JSON.stringify 并破坏 socket.io 功能

    基本上 socket io 使用 nativeJSON 来编码和解码数据包 而我的问题是我必须使用这个版本的原型来改变 JSON 行为 当我应该进入服务器时 如下所示 socket on event function a b c 我明白了s
  • 在node.js中生成密码重置令牌

    如何在 node js 中生成可在 url 中使用的密码重置令牌 我只需要生成令牌的方法 user reset password token user reset password expire expire date 编辑 这是解决方案
  • 如何强制 pm2 在特定时间后重新启动?

    我在用PM2让我的 Node js 应用程序保持运行 有什么办法可以拥有PM2每 1 小时重新启动一次我的应用程序 将下面的代码放入pm2 js并开始它pm2 start pm2 js var pm2 require pm2 pm2 con
  • 使用 Node.js mongodb 本机调用 db.destroyDatabase 时,什么可能导致“拓扑被破坏”错误?

    我正在使用 Node js Mongodb 本机驱动程序运行一些集成测试 每个测试都涉及连接到数据库 验证它是否尚不存在 例如 没有任何带有文档的集合 运行测试 然后删除数据库 高级代码如下 const runSafeTest functi
  • 打字稿:“找不到模块”且输入有效

    我刚刚使用 typescript 启动了一个新的 Nodejs 项目 我安装了打字 https github com typings typings https github com typings typings 并使用它来安装 Node
  • 在 MongoDB 中查找具有字符串 ID 数组的文档

    我有一个 id 字符串数组 我想将其与 find 函数一起使用 db companies find id in arr arr看起来像这样 563a2c60b511b7ff2c61e938 563a2c60b511b7ff2c61e8b7
  • 何时不使用承诺[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在阅读了数十篇关于 es6 Promise 有多伟大以及为什么我们应该实现它们的文章之后 我有这样的感觉 ALL我的 不平凡的 JavaScri

随机推荐