最前端|Flowise本地调试指南,让你轻松掌握调试技巧

2023-12-21 10:52

本文主要是介绍最前端|Flowise本地调试指南,让你轻松掌握调试技巧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

一、前言

二、环境要求

三、开发环境准备

四、调试后端代码

五、调试前端代码

六、环境变量配置【非必须】


一、前言

Flowise 是一个具备 3 个不同模块的 monorepo 工程,这 3 个模块分别负责:

  • server: Node API 后端服务
  • ui: React 前端
  • components: Langchain 组件

二、环境要求

  • Node.js v16 +
  • 安装 yarn v1:
npmi -g yarn

三、开发环境准备

1、ForkFlowise Github Repository在新窗口打开

2、Clone 你 Fork 的仓库并 cd 到项目根目录

3、创建并切换到一个分支,名字随意

4、安装依赖:

yarn install

提示:
安装过程可能要 10 分钟左右,请耐心等待

5、构建代码

yarn build

6、在 http://localhost:3000 上启动应用(非开发模式):

yarn start

7、【可选】配置环境变量:参考下文环境变量

8、使用开发模式启动项目:

yarn dev

在开发模式下
对packages/ui或packages/server的所有改动会更新到http://localhost:8080
如果有对packages/components的改动,需要重新执行yarn build使其生效

四、调试后端代码

1、在.vscode目录下创建文件launch.json

2、在 configurations 数组里创建一个配置对象,主要关注以下配置:

  • type:配置类型
  • name:显示在启动下拉菜单中的名称
  • cwd:执行启动命令的绝对路径,通常会用到表示 vscode 当前工作路径的变量 workspaceFolder
  • runtimeExecutable:用什么命令启动,默认为 node
  • runtimeArgs:启动命令的参数列表

3、根据 IntelliSense 设置其他你需要的配置,hover 配置选项可以看到说明

4、示例配置(启动命令为 yarn dev):

{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Backend",
"skipFiles": ["<node_internals>/**"],
"runtimeExecutable": "yarn",
"runtimeArgs": ["dev"],
"cwd": "${workspaceFolder}"
}
]
}

5、侧边栏切换至 Run and Debug 一栏,在下拉菜单中选择我们的配置,F5 启动调试

6、在packages/server中打断点测试,重启调试后能够正常进入断点即可

五、调试前端代码

1、这里演示用attach模式调试前端,因此要先执行yarn dev手动用开发模式启动前端工程

2、打开.vscode/launch.json文件,在 configurations 数组中添加一个配置对象

3、主要关注以下配置:

  • type:配置类型,这里使用 chrome 而不是 node
  • request:调试的请求类型,可选项为 launch 和 attach,这里选择 attach
  • port:用于远程调试浏览器的端口,chrome 推荐的端口为 9222;注意:这个端口不是前端工程的运行端口,而是和浏览器通信的调试用端口
  • url:要调试的前端应用的 url,如果不是本地 url 相当于远程调试(远程调试还有一些关键配置,这里不演示)
  • webRoot:表明在哪个本地目录下寻找连接到的进程正在运行的代码(不是构建后的代码,是源代码路径)

4、示例配置:

{
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"name": "Launch Frontend",
"request": "attach",
"port": 9222,
"url": "http://localhost:8080",
"webRoot": "${workspaceFolder}\\packages\\ui\\src"
}
]
}

5、侧边栏切换至 Run and Debug 一栏,在下拉菜单中选择我们的配置,F5 启动调试

6、在packages/ui中打断点测试,重启调试后能够正常进入断点即可

六、环境变量配置【非必须】

分别在packages/ui和packages/server下创建.env文件可以配置前端和后端应用的环境变量,所有环境变量参考environment-variables在新窗口打开

  • packages/ui 环境变量配置示例:
PORT=8080
  • packages/server 环境变量配置示例:
PORT=3000
OVERRIDE_DATABASE=true
DATABASE_TYPE=sqlite
#DATABASE_PATH=/your_database_path/.flowise
#When database is not sqlite
#DATABASE_PORT=""
#DATABASE_HOST=""
#DATABASE_NAME="flowise"
#DATABASE_USER=""
#DATABASE_PASSWORD=""#FLOWISE_USERNAME=user
#FLOWISE_PASSWORD=1234
#DEBUG=true
#APIKEY_PATH=/your_api_key_path/.flowise
#LOG_PATH=/your_log_path/.flowise/logs
#LOG_LEVEL=debug (error | warn | info | verbose | debug)
#EXECUTION_MODE=main (child | main)
#TOOL_FUNCTION_BUILTIN_DEP=crypto,fs
#TOOL_FUNCTION_EXTERNAL_DEP=moment,lodash

到此就结束了,感兴趣可以自己尝试一下。

作者:范轶洁| 资深前端开发工程师

版权声明:本文由神州数码云基地团队整理撰写,若转载请注明出处。

公众号搜索神州数码云基地,了解更多技术干货。

这篇关于最前端|Flowise本地调试指南,让你轻松掌握调试技巧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/519706

相关文章

在React中引入Tailwind CSS的完整指南

《在React中引入TailwindCSS的完整指南》在现代前端开发中,使用UI库可以显著提高开发效率,TailwindCSS是一个功能类优先的CSS框架,本文将详细介绍如何在Reac... 目录前言一、Tailwind css 简介二、创建 React 项目使用 Create React App 创建项目

vue使用docxtemplater导出word

《vue使用docxtemplater导出word》docxtemplater是一种邮件合并工具,以编程方式使用并处理条件、循环,并且可以扩展以插入任何内容,下面我们来看看如何使用docxtempl... 目录docxtemplatervue使用docxtemplater导出word安装常用语法 封装导出方

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

使用Jackson进行JSON生成与解析的新手指南

《使用Jackson进行JSON生成与解析的新手指南》这篇文章主要为大家详细介绍了如何使用Jackson进行JSON生成与解析处理,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 核心依赖2. 基础用法2.1 对象转 jsON(序列化)2.2 JSON 转对象(反序列化)3.

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre

Spring Boot结成MyBatis-Plus最全配置指南

《SpringBoot结成MyBatis-Plus最全配置指南》本文主要介绍了SpringBoot结成MyBatis-Plus最全配置指南,包括依赖引入、配置数据源、Mapper扫描、基本CRUD操... 目录前言详细操作一.创建项目并引入相关依赖二.配置数据源信息三.编写相关代码查zsRArly询数据库数