国庆长假和朋友聚会的时候,和朋友谈起最近这段时间捣鼓tauri,写了一个HTTP API客户端工具。『你写了这么多东西,其实有想过是为了啥不?』为了啥这是一个很大的命题,当初每个项目的时候都想过它应该解决些啥,最终每个项目好像完成了它的使命,也好像还在征途之上。不是每个人的追求都是诗和远方、星辰大海,而我只是闲着也是闲着,所以做了点啥,不是为了啥。

选择使用tauri并不是因为它的优缺点(如果想了解的大家可以直接去官网上查看),只是因为我自己想学习一下rust(不要问我有没有学会,再问就没办法聊天了),在了解过一些rust比较热门的项目之后,刚好也想学习一下桌面应用开发,因此CyberAPI也在此巧合之下开始创建。

CyberAPI大概在6月中的时候开始,到现在基本4个月左右,由于rust完全不会,开发过程一堆的坑坑洼洼,个中辛酸不说,这年头谁没遇到点苦难,但是无言以对的是,我觉得自己现在还是完全不会rust。开发CyberAPI的过程中主要遇到以下几个问题:

  • 基于系统自带的webview,可能存在兼容性问题(开发时遇到macos接口图标切换后有残留,而windows无此问题,切换为png图片解决)
  • javascript与rust调用如果大数据交互(10MB),处理时长在3秒左右(tauri已知issue,官方在下一版本优化)
  • 最开始选择所有的数据均保存至浏览器IndexedDB,存储的数据较多导入导出较慢,因此切换至使用rust版本的sqlite
  • 支持Dark/Light主题,部分组件未自适应调整
  • 多语言支持未实现实时变化,通过设置后重启应用解决

上面的问题其实都只是小问题,虽然系统托盘以及自动升级当前版本并未使用上,tauri对我而言已经可以满足桌面应用开发,精通WEB前端的开发者完全可以直接基于浏览器实现绝大部分的功能,有边缘项目的可以考虑尝尝鲜,但是其各类的插件还是较少,如果项目更多的依赖于系统接口,则建议对rust有较深功底再入坑。

下面介绍一下CyberAPI的主要特性:

  • 支持macos、windows以及linux平台,安装包均在10MB以下(rust编译强行精简)
  • 单个项目上千个接口秒级打开,内存占用较低(电脑较好,mac air m2)
  • 支持Dark/Light主题以及中英语言(英文翻译较差)
  • 简单易用的操作及配置方式(对我而言)
  • 可快速导入postman与insomnia的配置(拉新专用)
  • 关键字筛选支持中文拼音或者首字母(中文必须支持)
  • 可按接口、功能、项目导出配置,方便团队内共用(我只是个人使用)
  • 各类自定义的函数,方便各请求间关联数据(我用的较多)

CyberAPI的缺点则是:没有缺点(自己的项目,打死都要撑着)。不过由于只是个人的业余项目,如果有优化建议只能尽可能支持,如果是BUG则必须支持的(不能打脸,我也不会硬撑说不是BUG),如果大家使用得开心的,那小手一点给个Star,如果用得不开心那更要Star,以后哪天心情不爽就过来怼一下,对不对。

项目在github上开源,开源协议为Apache License 2.0,可以放心使用,地址为:https://github.com/vicanso/cyberapi

基于tauri打造的HTTP API客户端工具-CyberAPI的更多相关文章

  1. 基于reflectasm打造自己的通用bean工具

    业务场景: 在很多的业务系统中,erp,crm系统中,有许多的对象信息都是拆开来的,例如一个商品,那可能他的商品名称,商品等主要信息放在一个表(衍生出来一个对象),他的附属信息(商品图片,规格,价格等 ...

  2. MonjaDB —— 基于 Eclipse 的 MongoDB GUI 客户端工具(转载)

    原文链接http://www.oschina.net/question/12_59707 MonjaDB 是一个 MongoDB 的 GUI 客户端工具,提供直观的 MongoDB 数据管理的功能,支 ...

  3. 知识图谱+Recorder︱中文知识图谱API与工具、科研机构与算法框架

    目录 分为两个部分,笔者看到的知识图谱在商业领域的应用,外加看到的一些算法框架与研究机构. 文章目录 @ 一.知识图谱商业应用 01 唯品金融大数据 02 PlantData知识图谱数据智能平台 03 ...

  4. 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码

    本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 开源倾情奉献系列链接 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾 ...

  5. PhantomJS是一个基于WebKit的服务器端JavaScript API

    PhantomJS是一个基于WebKit的服务器端JavaScript API,它基于 BSD开源协议发布.PhantomJS无需浏览器的支持即可实现对Web的支持,且原生支持各种Web标准,如DOM ...

  6. 基于.NET打造IP智能网络视频监控系统

    开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码   开源倾情奉献系列链接 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾情奉献:基于.NET打造 ...

  7. Api管理工具(spring-rest-docs)

    对于app开发来说,必须需要有相应的api文档,一般最基础的就是用markdown工具来撰写api文档.当对于开发人员来说,是总会想着寻找更方便撰写,测试,对接前端开发的文档生成的工具. 其实这方面的 ...

  8. API测试工具SoapUI & Postman对比分析

    本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 最近公司要引入API测试工具,经过调查和了解,最终决定在SoapUI ...

  9. MySQL初始化以及客户端工具的使用

    MySQL初始化以及客户端工具的使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.什么是关系型数据库 关系型数据库通常是把所有的数据都组织成二维关系.之所以称为关系型数据库是 ...

随机推荐

  1. 2536-springsecurity系列--关于session管理1

    版本信息 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring ...

  2. 【Java中的线程】java.lang.Thread 类分析

    进程和线程 联想一下现实生活中的例子--烧开水,烧开水时是不是不需要在旁边守着,交给热水机完成,烧开水这段时间可以去干一点其他的事情,例如将衣服丢到洗衣机中洗衣服.这样开水烧完,衣服洗的也差不多了.这 ...

  3. 物无定味适口者珍,Python3并发场景(CPU密集/IO密集)任务的并发方式的场景抉择(多线程threading/多进程multiprocessing/协程asyncio)

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_221 一般情况下,大家对Python原生的并发/并行工作方式:进程.线程和协程的关系与区别都能讲清楚.甚至具体的对象名称.内置方法 ...

  4. boot issue

    Q:生产过程中不小心把 boot文件删除了 ,或者升级kenerl时发现版本不兼容,需要回退,此时没有快照备份情况如何操作? A:boot 主要文件是内核和grub引导文件   修复方法: 1.进入救 ...

  5. 项目经验记录丨Modbus转EtherNET/IP协议转换应用

    使用电脑通过软件来进行模拟 EtherNET/IP主站连接Mdodbus从站设备的项目记录.使用软件为EIPScan 模拟主站,通过Modbus转EtherNET/IP网关连接Modbus Slave ...

  6. 点击>>>解锁Apache Hadoop Meetup 2021!

    " 10月16日,属于开源发烧友的狂欢日来啦! Apache Hadoop Meetup 2021 开源大数据行业交流盛会盛大开启!让我们相约北京,一起嗨翻初秋~ 在当今信息化时代,逐渐成熟 ...

  7. 从 Delta 2.0 开始聊聊我们需要怎样的数据湖

    盘点行业内近期发生的大事,Delta 2.0 的开源是最让人津津乐道的,尤其在 Databricks 官宣 delta2.0 时抛出了下面这张性能对比,颇有些引战的味道. 虽然 Databricks ...

  8. 牛客网 十二桥问题(状压DP)

    https://ac.nowcoder.com/acm/contest/1104/B 注意到\(\text{K}\)只有\(12\),因此对起点与每个毕经边对应的点单源最短路,\(\text{DP}\ ...

  9. Docker 14 网络

    参考源 https://www.bilibili.com/video/BV1og4y1q7M4?spm_id_from=333.999.0.0 https://www.bilibili.com/vid ...

  10. 重看Java教学视频时的查漏补缺

    数据类型 1.基本数据类型:四类八种. 2.数据范围与字节数不一定相关.如float为4字节表示范围比long的8字节要大. 3.浮点数默认double类型,如要用float,需加F. 4.boole ...