首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏IMWeb前端团队

    hapi vs. express —— 路由

    本文作者:IMWeb 黎清龙 原文出处:IMWeb社区 未经同意,禁止转载 hapi vs. express [1] —— 路由 前言 express 与 hapi 是两个基于 nodejs ; } }]); 上面的例子展示了hapi的路由基础能力与特性 hapi的路由会把路径按照分隔分("/")切分为item,每一项可以有4个模式: 字符串字面量:完全的字符串匹配 混合变量:类似abc ,简单的说就是越具体的越高优先级 因此上面4种模式是从高到低的优先级 从上面的例子可以看到hapi的路由规则是依据优先级来匹配的,而不是按照注册路由的顺序来匹配的 hapi接收到一个path的时候,先用分隔符切割为 路由还有一个特性是配置化,这也是hapi的一个设计理念,配置化让代码一目了然,清晰明了。 路由匹配规则不同,hapi按优先级,express按注册顺序,个人是更偏向于优先级处理 两者设计理念不同:一个是配置化,一个是中间件,具体哪个好看个人喜好

    99220发布于 2019-12-04
  • 来自专栏IMWeb前端团队

    hapi vs. express —— 路由

    hapi vs. express [1] —— 路由 前言 express 与 hapi 是两个基于 nodejs 的 web server 开发框架,它们由于设计理念的不同,各有优缺点 本文主要介绍hapi ; } }]); 上面的例子展示了hapi的路由基础能力与特性 hapi的路由会把路径按照分隔分("/")切分为item,每一项可以有4个模式: 字符串字面量:完全的字符串匹配 混合变量:类似abc ,简单的说就是越具体的越高优先级 因此上面4种模式是从高到低的优先级 从上面的例子可以看到hapi的路由规则是依据优先级来匹配的,而不是按照注册路由的顺序来匹配的 hapi接收到一个path的时候,先用分隔符切割为 路由还有一个特性是配置化,这也是hapi的一个设计理念,配置化让代码一目了然,清晰明了。 路由匹配规则不同,hapi按优先级,express按注册顺序,个人是更偏向于优先级处理 两者设计理念不同:一个是配置化,一个是中间件,具体哪个好看个人喜好

    1.1K50发布于 2017-12-29
  • 来自专栏后端知识体系

    Hapi-使用手机远程你的Claude Code

    ://你的ip:3006后台长期运行Hapi Hub对于云服务而言,直接采用hapi hub或者nohup运行hapi进程,在关闭终端之后,都会将进程休眠,导致服务连接不上最好的方式是采用pm2进行管理 在本地开发机器启动Hapi这里其实可以让Hapi hub(中继服务端)和Hapi(连接Claude Code客户端)都启动在云服务器上,但是cc写代码其实还是挺吃配置的,不建议这样做,所以一般是本地电脑开发机作为主力 ,value为https://example.com或者Ip,保存即可之后启动Hapi启动Hapi有两种方式:直接启动hapi采用hapi runner start启动直接启动hapi先说第一个,输入 Command failed: D:\nvm\v22.19.0\node_modules@twsxtd\hapi\node_modules@twsxtd\hapi-win32-x64\bin\hapi.exe 可以看到被Hapi控制的cc,同时在手机会话上也能找到对应的会话了,在本地操作和远程操作会自动切换连接hapi runner start启动如果你不需要控制台在前台显示,只是想要hapi静默的被远程控制

    48210编辑于 2026-03-25
  • 来自专栏IMWeb前端团队

    Node.js ORM 框架 sequelize 实践

    zzbozheng 原文出处:IMWeb社区 未经同意,禁止转载 Node.js ORM 框架 sequelize 实践 最近在做积木系统2.0,这次使用的nodejs web框架是团队统一的hapi.js ,而数据库依然是mysql,ORM 框架选用有着6000+ stars 的 sequelize.js,hapi-sequelize插件对sequelize做了很简单的封装,可以让我们很自如地在hapi中游走 初始化 sequelize // server.js const Hapi = require('hapi'); const server = new Hapi.Server(); //注册到 hapi server server.register( [ { register: require('hapi-sequelize'), } }); return User; } module.exports = userModel; 同步模型到数据库 // server.js server.plugins['hapi-sequelize

    2.6K40发布于 2019-12-04
  • 来自专栏IMWeb前端团队

    Node.js ORM 框架 sequelize 实践

    zzbozheng 原文出处:IMWeb社区 未经同意,禁止转载 Node.js ORM 框架 sequelize 实践 最近在做积木系统2.0,这次使用的nodejs web框架是团队统一的hapi.js ,而数据库依然是mysql,ORM 框架选用有着6000+ stars 的 sequelize.js,hapi-sequelize插件对sequelize做了很简单的封装,可以让我们很自如地在hapi中游走 初始化 sequelize // server.js const Hapi = require('hapi'); const server = new Hapi.Server(); //注册到 hapi server server.register( [ { register: require('hapi-sequelize'), } }); return User; } module.exports = userModel; 同步模型到数据库 // server.js server.plugins['hapi-sequelize

    4K100发布于 2018-01-08
  • 来自专栏Nodejs技术栈

    2024 年这 5 个 Node.js 后端框架最受欢迎!

    Hapi.js Hapi.js,即 Http-API 的简称,是一个用于开发可伸缩 Web 应用程序的开源框架。hapi 最基本的用例之一是构建 REST API。 关键特性:突出之处 1.基于配置的设计 通过使用配置对象,在 Hapi.js 中我们能够配置路由、设置和插件。 const Hapi = require('@hapi/hapi'); const server = Hapi.server({ port: 3000, routes: { cors: 3.认证和授权 Hapi.js 提供了对各种认证策略的内置支持,并允许开发人员轻松定义访问控制策略。 4.输入验证 输入验证是 hapi.js 的另一个关键方面。在路由的选项对象中,我们可以定义需要验证哪些输入。默认验证对象包含以下值。

    36.3K21编辑于 2024-03-18
  • 来自专栏java开发的那点事

    从零开始学VUE之Vue CLI(全局安装 CLI)

    npm install @vue/cli -g 执行安装 C:\Users\ext.zhangyugen1>npm install @vue/cli -g npm WARN deprecated @hapi request has been deprecated, see https://github.com/request/request/issues/3142 npm WARN deprecated @hapi 3.1.6: This version has been deprecated and is no longer supported or maintained npm WARN deprecated @hapi /address@2.1.4: Moved to 'npm install @sideway/address' npm WARN deprecated @hapi/bourne@1.3.2: This version has been deprecated and is no longer supported or maintained npm WARN deprecated @hapi/hoek@8.5.1

    1.3K50发布于 2021-07-01
  • 来自专栏云计算教程系列

    如何在Ubuntu 16.04上使用Concourse CI设置持续集成管道

    在您的Web浏览器中,访问GitHub上的“hello hapi”应用程序。 这在您的主目录中创建一个名为hello_hapi的新目录。 第一个get语句需要hello_hapi资源并指定trigger: true选项。这告诉Concourse每次在hello_hapi存储库中检测到新提交时自动获取存储库并开始新作业。 在这种情况下,我们指向hello_hapi位于的输入目录中的脚本hello_hapi/ci/scripts/run_tests.sh。接下来我们将创建此脚本。 完成后保存并关闭文件。 /usr/bin/env bash set -e -u -x mv dependency-cache/node_modules hello_hapi cd hello_hapi && npm test

    5.4K20发布于 2018-08-10
  • 来自专栏前端达人

    2024年不可错过的Node.js框架大盘点:让你的后端开发效率翻倍!

    四、Hapi.js——构建可扩展Web应用的强力工具 Hapi.js是一个开源框架,简称来自Http-API,作为开发可扩展Web应用的强大工具而矗立不倒。 Hapi.js的突出特性 1、配置式设计 Hapi.js采用了配置驱动的设计,允许开发者通过配置对象轻松设置路由、定义设置和集成插件。 看这个例子: const Hapi = require('@hapi/hapi'); const server = Hapi.server({ port: 3000, routes: { 2、强大的插件系统 Hapi.js拥有一个强大的插件系统,使得集成变得轻而易举。 无论是构建企业级应用还是快速原型设计,Hapi.js都是一个值得考虑的强大选项。

    8.4K10编辑于 2024-03-26
  • 来自专栏ccf19881030的博客

    Express.js Tutorial: Build RESTful APIs with Node and Express | Mosh

    不过需要注意的是,在npm官网上作者说joi包已经被废弃了,建议使用@hapi/joi This package has been deprecated Author message: This module has moved and is now available at @hapi/joi. 参考资料 joi https://hapi.dev/module/joi/ @hapi/joi jjoi-The most powerful data validation library for JS

    2K20发布于 2020-05-18
  • 来自专栏洛竹早茶馆

    2021 年最值得使用的 Node.js 框架

    Hapi.js 「GitHub」 「Stars」:13.1k 「Forks」:1.3k 「版本」:v20.1.0 「贡献者」:208 「使用人数」:16.5k 「NPM 周下载量」:105,065 「License Hapi.js 是众多开发者信赖的最简单、安全、可靠的框架之一。你可以使用 Hapi.js 来创建可扩展和健壮的应用程序,它具有最小的开销和开箱即用的功能。 「Hapi.js 可以被用于:」 网站 HTTP 代理应用 应用程序接口服务 「Hapi.js 主要特性:」 输入验证 日志 错误处理 代码可重用性 缓存 没有外部依赖 基于配置的功能 集成框架:在 Node 「什么时候使用 Hapi.js:」 Hapi.js 是开发安全、实时、可扩展和社交媒体应用的理想选择。大多数移动应用开发者都喜欢用 Hapi.js 来创建代理和 API 服务器。 「谁在使用 Hapi.js:」 Commercetools Main Stack Beam Taggun Artifakt 2.

    7.8K30发布于 2021-05-31
  • 前端小白玩转koa(一)

    Hapi 简介:Hapi 是一个用于构建应用程序和服务的 Node.js 框架,它注重配置和插件系统,能够构建稳定、安全的 web 服务。 例如,定义一个简单的路由配置: const Hapi = require('hapi'); const server = new Hapi.Server({ port 例如,使用hapi - vision插件来支持模板引擎: const Inert = require('hapi - inert'); const Vision = require( 'hapi - vision'); const server = new Hapi.Server({...}); await server.register([ Inert

    76320编辑于 2024-11-28
  • 来自专栏云计算教程系列

    使用GitLab构建Docker镜像并托管

    因为使用特权runner会对安全性产生影响,所以我们将创建一个特定于项目的运行器,它只接受我们hello_hapi项目中的Docker作业。 这看起来像这样: git clone git@gitlab.example.com:sammy/hello_hapi.git cd hello_hapi # edit the file w/ your :$CI_COMMIT_REF_NAME RELEASE_IMAGE: gitlab.example.com:5555/sammy/hello_hapi:latest ​ before_script 如果测试阶段成功,则阶段将下载release镜像,将其标记为hello_hapi:latest并将其推回到注册表。 从现在开始,每次我们将新代码推送到我们的存储库的master分支时,我们都会自动构建并测试新的hello_hapi:latest镜像。

    5.4K20发布于 2018-08-06
  • 来自专栏云计算教程系列

    使用GitLab构建Docker镜像并托管

    因为使用特权runner会对安全性产生影响,所以我们将创建一个特定于项目的运行器,它只接受我们hello_hapi项目中的Docker作业。 这看起来像这样: git clone git@gitlab.example.com:sammy/hello_hapi.git cd hello_hapi # edit the file w/ your :$CI_COMMIT_REF_NAME RELEASE_IMAGE: gitlab.example.com:5555/sammy/hello_hapi:latest ​ before_script 如果测试阶段成功,则阶段将下载release镜像,将其标记为hello_hapi:latest并将其推回到注册表。 从现在开始,每次我们将新代码推送到我们的存储库的master分支时,我们都会自动构建并测试新的hello_hapi:latest镜像。

    9.4K00发布于 2018-10-16
  • 来自专栏葡萄城控件技术团队

    2017年 JavaScript 框架回顾 -- 后端框架

    其他后端框架 下面是除 Express 之外的四个最大的后端框架,分别为: Koa Hapi Sails Next koa 蓝色代表的是 koa 的相对使用率情况。 Hapi Hapi 是一个用于构建应用和服务的丰富框架,Hapi 使得开发者更专注于编写可复用的应用逻辑,而不必把时间花费在基础设施的搭建上。 2014年底,Hapi 有一个短暂的繁荣时期,然而自此之后,Hapi 的使用率就一直处于下滑状态。 Sails Sails 是 JavaScript 的 Ruby on Rails 克隆。

    1.7K30发布于 2018-03-27
  • 来自专栏编程

    2017年JS 框架回顾:后端框架

    其他后端框架 下面是除 Express 之外的四个最大的后端框架,分别为: Koa Hapi Sails Next koa 蓝色代表的是 koa 的相对使用率情况。 Hapi Hapi 是一个用于构建应用和服务的丰富框架,Hapi 使得开发者更专注于编写可复用的应用逻辑,而不必把时间花费在基础设施的搭建上。 2014年底,Hapi 有一个短暂的繁荣时期,然而自此之后,Hapi 的使用率就一直处于下滑状态。 Sails Sails 是 JavaScript 的 Ruby on Rails 克隆。

    4.4K90发布于 2018-02-02
  • 来自专栏京程一灯

    面向开发人员的十大 NodeJS 框架

    让我们看一下这 10 个顶级 NodeJS 框架: Hapi.JS Hapi 是一个强大且健壮的框架,用于开发API。 完善的插件系统和各种关键功能(例如输入验证、基于配置的功能、实现缓存、错误处理、日志记录等)使 Hapi 成为最受欢迎的框架之一。 Hapi 以最小的开销构建安全、强大、可扩展的开箱即用的功能 Hapi 以最小的开销构建安全、强大、可扩展的开箱即用的功能 Hapi 的模式是配置驱动的,为控制 Web 服务器操作而构建的。

    3.5K20发布于 2020-01-13
  • 来自专栏人生代码

    我要以血和泪的经历告诉你,这个 bug 太难解决了

    (Note that the API surface has changed to use Promises in 1.x.) npm WARN deprecated @hapi/joi@16.1.8: the actual version of core-js@3. npm WARN deprecated har-validator@5.1.5: this npm WARN deprecated @hapi 2.1.4: This version has been deprecated and is no longer supported or maintained npm WARN deprecated @hapi

    6K30发布于 2020-09-23
  • 来自专栏IMWeb前端团队

    使用joi来验证数据模型

    password: Joi.string().regex(/^[a-zA-Z0-9]{3,30}$/) }); 在 hapijs 中使用Joi hapijs 自家的Joi 当然要无缝对接起来 var Hapi = require('hapi'); var Joi = require('Joi'); var server = new Hapi.Server(); server.connection({

    3.1K00发布于 2017-12-28
  • 来自专栏java一日一条

    10 个最适合 Web 和 APP 开发的 NodeJS 框架

    Hapi Hapi 是为数不多的不依赖于 Express 的 node.js 框架,现在甚至已经完全独立于 Express 了。 在最近一段时间中,很多开发者选择了 Hapi 而非 Express,这使得它或多或少变为了 Express 的竞争对手。 Hapi 在众多 nodejs 的框架中并非一个老牌选手,然而它却成功的在这当中创造了自己的一个生态圈。 Hapi 致力于完全的分离 node HTTP 服务器、路由以及业务逻辑,并更多的聚焦于如何尽可能的通过配置而非代码来控制东西。 Hapi 最初是由 Eran Hammer 以及在 Walmart labs 的团队为了工作需要开发的。

    4.1K20发布于 2018-09-18
领券