从 next.js 中的中间件重定向 13 AppDir: true

2023-12-10

当我没有得到 jwt 后端时,我试图进行重定向。我在 next.js 13 中appdir active.

中间件.ts

import { NextResponse } from 'next/server'
import type { NextRequest } from 'next/server'

export function middleware(req: NextRequest) {
  const token = req.cookies.get('token')
  if (!token) {
    return NextResponse.redirect('/login')
  }
  return NextResponse.next()
}

这应该有效

return NextResponse.redirect(new URL('/login', req.url))

看起来需要绝对url

当用户访问“登录”页面时,不应运行此中间件。

const pathname = req.nextUrl.pathname

检查登录页面的路径名,如果“路径名===”login”则根据该路径名调用“next”。不要运行中间件login页。因为login页面不应受到保护

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

从 next.js 中的中间件重定向 13 AppDir: true 的相关文章

  • jQuery mobile 中的文本区域高度和宽度?

    我修复了 jQuery mobile 中文本区域元素的高度 并且在纵向中得到了完美的高度和宽度 但在横向中宽度没有放大 谁能帮我 提前致谢 HTML
  • Angular UI 模式的范围问题

    我无法理解 使用角度 UI 模式的范围 虽然这里不是很明显 但我已经正确设置了模块和所有内容 据我所知 但这些代码示例尤其是我发现错误的地方 index html 其中重要部分 div class btn group div
  • 在 HTML5 Javascript 中将 BlobBuilder 转换为字符串

    function blobToString blob var reader new FileReader var d reader onloadend function d callback reader result console lo
  • JavaScript 添加布尔值

    console log true true 2 console log typeof true true number console log isNaN true true false 为什么两个布尔类型相加会产生一个数字 我有点理解 如
  • 显示具有多个父代的 D3 树

    我目前有this http bl ocks org mbostock 4339083图已实现 我希望在描述具有多个父节点的子节点时保持结构和可折叠性 有没有办法做到这一点 我研究了力图 但我也想保留一组层次结构 这意味着 1 级的父级可以有
  • Firebase,只得到新的孩子[重复]

    这个问题在这里已经有答案了 var firebase new Firebase firebaseRef on child added function snapshot 这将接收所有元素 有没有办法在创建新的 Firebase 引用时不接收
  • 通过 JavaScript 获取表单名称

    我有一个简单的问题 但我在网上找不到好的解决方案 我有这个 HTML 代码
  • 如何在网站上使用 svg 元素制作块的屏幕截图?

    我在网站上创建了一个构造函数 其本质是将所选元素及其颜色 svg中的元素 添加到访问者选择的背景和背景颜色 png中的背景 中 然后必须单击 保存 结果 按钮并仅执行工作区的屏幕截图 我写了这个脚本 但它需要屏幕截图 但只有背景 并忽略选定
  • IntersectionObserver是否支持水平滚动观察?

    我制作了几个垂直滚动 IntersectionObserver 模块 但我对水平滚动感兴趣 根将是 div 观察目标将是 img 我想观察当 img 放大但 div 保持视口宽度时的变化 我什至不确定移动 Safari 是否会将缩放后的图片
  • 如何使用 Greasemonkey 监视静态 HTML 页面的更改?使用哈希?

    我希望我的 Greasemonkey 脚本仅在其访问的静态页面具有与以前完全相同的内容时运行 现在我可以设置一个包含该页面哈希的变量 我正在寻找一种动态散列页面的方法 以便我可以将我的散列与生成的散列进行比较 关于如何即时实现散列的任何想法
  • React autoFocus 将光标设置为输入值的开头

    我有一个受控输入 最初显示一个值 我已将该输入设置为自动聚焦 但当我希望它出现在末尾时 光标出现在输入的开头 我知道这可能是因为自动对焦是在值之前添加的 但我不能 100 确定 在输入字段末尾完成光标初始化的最佳方法是什么 var Test
  • Vaadin 12 将对象传递给 JavaScript 函数:无法对类进行编码

    Vaadin 12 Kotlin 项目 In my myPage html我有JavaScript myObject redirectToCheckout sessionId 1111 2222 所以我需要调用javaScript函数red
  • 表单发布请求并存储收到的数据

    我有一个非常简单的表单 在提交时发出发布请求
  • 使用 Javascript 设置 cookie [重复]

    这个问题在这里已经有答案了 我正在尝试构建我的第一个移动应用程序 它需要连接到我的 mysql 数据库并使用 json 返回数据 这很好 目前我有一个登录系统 一旦确定用户名和密码存在 它就会返回一条成功消息 对于下一步 我想在我的页面上使
  • 用于选择特定 div 中具有特定类的锚元素的 jQuery 选择器是什么

    我有一些这样的代码 我想选择每个 a 带有类的标签status在 div 中foo div a class status a div 你可以这样做 foo find status a
  • Highcharts jQuery 渲染问题 - 所有浏览器

    我在尝试使用构建堆积柱形图时遇到了一个奇怪的问题高图表 http www highcharts com 当图表呈现时 在您调整浏览器大小之前 不会显示列无论如何 导致图表重绘 我认为 图表的其余部分显示 轴 标题等 但不显示列本身 我在 I
  • 使用 next.js 进行服务器端渲染与传统 SSR

    我非常习惯 SSR 意味着页面得到完全刷新并从服务器接收完整 HTML 的方法 其中根据后端堆栈使用 razor pub other 进行渲染 因此 每次用户单击导航链接时 它只会向服务器发送请求 整个页面将刷新 接收新的 HTML 这就是
  • 滚动顶部不符合预期

    Note 由于上次忘记奖励而重新开放赏金 A Woff 大师已经给出答案 我想在用户展开某一行时到达该行 这样当最后一个可见行展开时 用户不必向下滚动即可查看内容 I used example tbody on click td green
  • 将数组从 jquery ajax 传递到代码后面

    我必须将二维数组传递给在asp net网页代码后面编写的页面方法我有一个变量objList作为二维数组 我使用以下代码来实现此目的 但没有成功 并且未调用页面方法 脚本语言 function BindTable objList ajax u
  • 使用velocity.js制作可拖动元素的动画

    我正在使用velocity js 为用户拖动的可拖动 SVG 元素设置动画 然而 velocity js 将先前的 mousemove 坐标排队并通过所有后续的 mousemove 坐标进行动画处理 我想要的是velocity js 不要对

随机推荐

  • 每次调用类中的方法时运行一个函数

    我正在尝试为类中的每个函数创建一个每次调用函数时都会调用的方法 该类是另一个类的子类 在我的具体情况下 它是list class Foo another class def init self bar self bar bar super
  • 从mysql中没有pk或id或唯一列的表中删除重复记录

    我需要从我的一个表中删除所有重复的记录 问题是没有任何 id 或唯一或键列 所以我不能做这样的事情 delete from tbl using tbl tbl t2 where tbl locationID t2 locationID an
  • 不显示 asp 错误

    我已将 sql 数据库从一台服务器移动到新服务器 分离 附加 现在我遇到一些奇怪的行为 因为它不起作用但没有显示错误 这是代码
  • Python:并行运行嵌套循环、2D 移动窗口

    我处理地形数据 对于一个特定问题 我用 Python 编写了一个函数 它使用特定大小的移动窗口来快速浏览矩阵 高程网格 然后我必须对此窗口执行分析 并将窗口中心的单元格设置为结果值 我的最终输出是一个与原始矩阵大小相同的矩阵 该矩阵已根据我
  • 脚本在 Google 电子表格中导入本地 CSV

    如何从本地硬盘导入我拥有的 Google 电子表格文档中的 CSV 文件 我想通过脚本复制文件 gt 导入命令 这类似于 DocList 的错误答案 但您可以直接从 blob 中获取数据 解析它 然后将其导入电子表格 而不是使用 DocsL
  • 循环 AsyncTask 类必须声明为抽象或实现抽象方法

    我试图循环遍历表中的一些记录 并为每个记录使用一个值作为参数 获取一个网页来解析一些html 获取一些 JSON 数据进行解析并从中获取几个值 它们本身都可以完美工作 但我无法让它们都在 AsyncTask 中工作 我这里有代码 我知道我可
  • Android RatingBar:getProgressDrawable 未转换为正确的类

    我在用 Android RatingBar更改星星颜色 这行代码 LayerDrawable stars LayerDrawable rating bar getProgressDrawable 在我的 Nexus 4 模拟器 API v2
  • 响应式设计 css dom 元素操作

    我有 div 字段 包括输入元素和标签元素 两者都是显示 块 div class cf full div
  • 选择链接或复选框以显示类别标记

    我有点坚持试图告诉 Javascript 做我想要它做的事情 我有一个示例地图http calwestculture com sgs backup example map html我的左侧 spry 菜单中有类别 我希望这些类别是可点击的
  • 如何按键值对具有 stdClass 对象的多维数组进行排序? [复制]

    这个问题在这里已经有答案了 是的 我已经搜索并尝试了很多技术 但似乎没有任何效果 这是我的数组 Array 0 gt stdClass Object id gt 119 name gt Business3 start date gt 133
  • 第一个句号之后的参数的自动完成/下拉框

    例如 如果我在 Excel 托管的 VBA 中编写参数 ActiveSheet UsedRange Select Halfway through writing the first part ActiveSheet CTRL SPACE w
  • 打字稿中的管道(|)是什么意思?

    在浏览一些打字稿代码时 ng bootstrap我找到了管道 操作员 export declare const NGB PRECOMPILE typeof NgbAlert typeof NgbTooltipWindow 管道有什么用 打字
  • iOS6 中的 AudioToolBox 泄露?

    当我使用 AudioToolBox 播放音乐时 内存泄漏严重 AVAudioPlayer newMusicPlayer AVAudioPlayer alloc initWithData data error error 我用这个代码来播放音
  • 读取文本文件并在 MSBuild 中分割每一行

    我在 MSBuild 中遇到了以下问题 我有一个文本文件 buildsolutions1 txt 其中包含列表 逐行 其中包含我需要构建的所有解决方案以及以逗号分隔的相关开发人员电子邮件 常见 Common sln am email com
  • VS 代码自动更正

    我正在寻找一种方法来自动替换 VS Code 中经常拼写错误的单词 有没有什么东西 我将如何创建一些东西 我可以添加要查找的特定字符串 要替换的字符串以及要激活的自动更正的语法 文件类型 Example 背景 背景 CSS SCSS 更少
  • 购物车错误(LaravelShoppingcart)

    我在用Crinsane LaravelShoppingcart使用 Laravel 5 当我尝试将商品添加到购物车时 它将显示错误 非静态方法 Gloudemans Shoppingcart Cart add 不应静态调用 假设 this
  • 仅在 chrome 上使用 corsheaders 的 Missing Patch 方法

    我有一个正在使用的 Django 应用程序corsheaders包及其在 settings py 中如下所示 INSTALLED APPS corsheaders MIDDLEWARE on top corsheaders middlewa
  • 将 csv 文件的一些列复制到表中

    我有一个包含 10 列的 CSV 文件 创建包含 4 列的 PostgreSQL 表后 我想将 10 列中的一些复制到表中 我的 CSV 表的列如下 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 我的 PostgreSQL
  • “抛出新的 NotImplementedException();”是什么意思究竟做什么?

    我有一个继承自类 a 的类 b 在类 a 中 有一些代码在事件不为空时执行操作 我需要在应用程序的特定时间在 b 类中触发该代码 所以在 b 中我订阅了一个新的处理程序 事件 如果我将自动生成的事件 按原样 保留在 b 类中throw ne
  • 从 next.js 中的中间件重定向 13 AppDir: true

    当我没有得到 jwt 后端时 我试图进行重定向 我在 next js 13 中appdir active 中间件 ts import NextResponse from next server import type NextRequest