码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • nodejs---fastify-路由


    一、路由

    在应用程序中定义一个路由用来和用户发送的请求的地址和方法进行匹配,如果两者都相等,匹配成功,如果匹配成功,使用路由对应的处理函数给予本次请求响应。如果没有匹配成功,说明程序中没有定义的路由,因此给予404的响应。

    路由是为了多页面的应用程序。

    在fastify中预置了很多fastify实例方法(路由方法)

    定义路由:

    1.完整定义

    2.简写定义

    二、完整定义

    fastify.route(options)

    options参数描述:

     

    1.method:支持的 HTTP 请求方法。

    目前支持 'DELETE'、'GET'、'HEAD'、'PATCH'、'POST'、'PUT' 以及 'OPTIONS'。它还可以是一个 HTTP 方法的数组。

    2.url:路由匹配的 URL 路径 (别名:path)。

    3.handler(request, reply):处理请求的函数。函数被调用时,Fastify server 将会与 this 进行绑定。注意,使用箭头函数会破坏这一绑定。

    request请求对象:包含客户端请求的信息对象

    reply响应对象:包含给与客户端请求响应的相关方法

    其他参数参考官网Routes | Fastify 中文网

    我们通过下边新定义的路由进代码行演示

    1)在路由文件夹下新建立一个js文件(新路由实例)

    2)写入代码

    1. 'use strict'
    2. module.exports = async function (fastify, opts) {
    3. fastify.route(
    4. {
    5. method:'GET',
    6. url:'/api',
    7. handler:async (request,reply)=>{
    8. return {code:200,msg:'成功获取数据'}
    9. }
    10. }
    11. );
    12. }

    注意代码中的请求方式必须是全大写,(可以通过字符串的toUpperCase()方法进行转换)

    然后运行之后在指定地址就可以获取数据了

     另外,浏览器只支持GET请求的,所以我们需要用软件Apipost匹配其他请求方式的数据。

    三、简写定义(常用get put post delete)

    fastify.get(path, [options], handler)定义一个请求方法为"GET"请求
    fastify.head(path, [options], handler)定义一个请求方法为"HEAD"请求
    fastify.post(path, [options], handler)定义一个请求方法为"POST"请求
    fastify.put(path, [options], handler)定义一个请求方法为"PUT"请求
    fastify.delete(path, [options], handler)定义一个请求方法为"DELETE"请求
    fastify.options(path, [options], handler)定义一个请求方法为"OPTIONS"请求
    fastify.patch(path, [options], handler)定义一个请求方法为"PATCH"请求

     

     

  • 相关阅读:
    多输入多输出 | MATLAB实现CNN-LSTM-Attention卷积神经网络-长短期记忆网络结合SE注意力机制的多输入多输出预测
    关系型数据库设计理论及部署实现
    linux驱动开发学习001:概述
    Zabbix (二) --------- Zabbix 部署
    【译】.NET 7 中的性能改进(二)
    【EI会议分享】2022年第三届智能制造与自动化前沿国际会议(CFIMA 2022)
    LeetCode220814-20_84、最长连续序列
    UNet - unet网络
    UTS机构应用之数据中心服务
    vue开发移动端&打包(有点凌乱,未完待续。。。)
  • 原文地址:https://blog.csdn.net/m0_72694993/article/details/127405702
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号