问题标签 [dynamic-routing]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - NextJs与动态路由——空参数场景如何处理?
我试图在不使用查询字符串的情况下检索 url 参数,例如,http://localhost:3000/test/1
这是我目前所拥有的:
目录结构
索引.jsx
它有效,但如果我省略 pageNumber 参数,我得到的只是 404 页面,这是我们在使用查询字符串时没有的问题。
现在,问题是:是否可以在不创建额外的 index.jsx 页面和复制代码来处理空参数场景的情况下对其进行排序?
url-routing - laravel - 动态路由组前缀作为角色
我想在登录后使用,用户输入 laravel 路由组前缀。但我没有找到一个完美的方法来做到这一点。
例如:我有三种用户类型-
我想制作一个动态路由前缀,例如:
我正在尝试使用帮助文件执行此操作
//获取url前缀helper.php的部门名称
在这里,我无法在帮助文件中获取身份验证详细信息,这是我的路由组中身份验证中间件的原因
网页.php
当我在帮助程序中传递静态部门 ID 时,这里所有的东西都正常工作,但是如果我尝试登录用户部门,我会收到以下错误
ErrorException 试图获取非对象的属性 'department_id'
subdomain - NextJS 的动态子域路由
NextJS 中如何实现动态子域路由功能?
abc
示例:如果用户在站点中带有用户名,xyz
那么他可以访问他的站点abc.xyz.com
此外,如果用户有abc.com
域,那么他可以在将来指向abc.com
So abc.xyz.com
,如果有人打开abc.com
然后abc.xyz.com
提供服务。在 URL 中也abc.com
显示了。
我调查了 NPM 中的几个插件,如 vhost 和通配符子域,但不确定这是解决这个问题的正确方法。
vhost 需要hosts
在本地系统中更改系统,而通配符子域纯粹通过路由解决了这个问题。
本地系统设置我已经使用临时工作的代码自定义了Server.js,但似乎不是可以在生产中使用的解决方案:
服务器.js
在_app.js
在我的主人中,我也有demo.demo.com
一点localhost
。
该站点适用于我,demo.demo.com:3000
但如何使用数据库和CNAME
记录在生产场景中对其进行概括,并使用用户操作自动添加/更改 CNAME 记录。
next.js - 如何使用 Next.js router.push 到 Formik 的动态 api 路由,得到 404(未找到)错误
我正在使用 auth0 nextjs-auth0库来处理 next.js 应用程序的注册和身份验证。我还使用Formik来处理输入数据和验证。我想通过 Formik 将电子邮件地址提交到 Next.js api 路由。
当我使用 Nextjs 的useRouter
钩子导航router.push
到 api 路由时,它按预期工作,因此我的数据被传递到 api 路由并且 nextjs-auth0 按预期重定向用户。但是,在重定向浏览器控制台之前会闪烁以下错误:
我应该忽略这个错误吗?是否有可能router.push
仅用于客户端重定向我正在尝试导航到 api 路由,这不是应该如何完成的?注意,我的/signup
api 路由使用 auth0-nextjs 代码并将用户重定向到 auth0 的身份验证页面。相关代码如下。
注册api路由:
导入 useRouter 钩子:
Formik 的验证功能:
Formik 提交的处理函数:
Formik 组件(注意,使用 <Button 组件是Chakra-ui组件):
firebase - 基于 Firebase 数据的 Nuxt 动态路由
我在 Netlify上托管了一个SPA 模式的Nuxt应用程序。我正在使用Firebase验证和存储用户数据。
我想在动态路线上显示所有用户个人资料。例如
(其中“martcube”是documentid)
对于给定的技术堆栈,这甚至可能吗?如果您需要额外的代码或信息,请写信给我,我会立即编辑我的问题。
python - (初学者)Flask 动态路由不起作用
我刚刚开始学习Flask
,但我什至无法完成这个初学者步骤。我试图制作dynamic URL
如下路线,但是当我去http://127.0.0.1:5000/home例如,它说"NOT FOUND"
。任何帮助表示赞赏!
javascript - ExpressJS:在运行时动态添加路由
我希望能够在运行时添加新路由,而无需使用 NodeJS 和 ExpressJS 重新启动服务器。我在这篇文章中做了一个类似的方法:https
://alexanderzeitler.com/articles/expressjs-dynamic-runtime-routing/从技术上讲,我同样可以在文章中在运行时添加新文件和逻辑,但问题是当没有匹配 api 路由时,我将发送一个 404 JSON 响应(因为它应该是)。
我认为我遇到的问题是我的动态创建的路由永远不会到达,因为静态路由优先于动态创建的路由。这意味着创建的路由将在错误处理后挂载,因此永远不会到达。我在app.js中的代码
当我注释掉错误处理时,我能够访问我在运行时创建的路由,而通过错误处理,我只能在服务器重启后访问我想要避免的动态创建的路由。
查询参数无法解决问题,因为动态添加的路由在逻辑、模型属性、http 方法/动词和 API 端点上有所不同。例如
GET/POST /api/{endpoint}
GET/POST /api/foo/{endpoint}
GET/PUT/DELETE /api/foo/bar/{endpoint}/:id
我想我基本上需要:
1)找到一种在错误处理之前挂载动态创建的路由的方法 - 我目前遇到这种情况或
2)修改路由堆栈 - 我读过这是不切实际的、缓慢的、不好的做法和容易出错
的 3)找到替代解决方案
我希望有一个人可以帮助我。
在此先感谢
编辑
这是创建新路线的代码。相关端点是 POST 方法中的 /api/databases/
片段中的控制器只是一个模块化控制器文件,它处理我对不同模型的所有端点的所有 CRUD 操作。每条路由都分为模型、控制器和路由,以分离和更好地维护它们的逻辑。
在 POST 方法中,我首先检查要创建的端点是否已经存在。如果是这样,我会以 422 响应,表明端点已经存在。如果它不存在,我会在数据库端点中创建一个带有模块化控制器的条目,并为应该创建的端点创建一个模型、控制器和路由。
创建逻辑如下:
在这里,我基本上将数据从 POST 方法传递到异步创建的模型、控制器和路由文件。创建所有文件后,我将端点路由安装到应用程序。挂载路由的逻辑是:
创建的路由可能如下所示:
checkAuth 包括一些用于授权/身份验证的逻辑。
该代码几乎完成了我想要它做的事情,只是我不知道如何在错误处理之前处理路线的定位。
image - VueJS 中的动态名称路由/动态路由匹配
我有一些产品正在被迭代和展示。我想使用产品的图像作为每个产品特定页面的链接。我希望每个产品页面都从同一个模板中提取,用适当的产品详细信息替换道具。
产品的示例 url 类似于:/shop/product/name-of-product
以下是相关代码:
路由器/Index.js
next.js - nextJS SSR useRouter() 在刷新页面时不起作用
我在我的项目中使用 nextJS SSR。现在,当我尝试使用以下代码获取页面参数时,它显示未定义。
当页面从其他页面路由时它可以工作(没有使用“下一个/链接”重新加载页面)但是当我刷新页面时它不起作用。有人可以帮忙吗?
vue.js - 使用Vue js动态路由匹配从一个配置文件/:id到另一个问题
我的路线是:
我也有 <router-link> :to="{name: 'app-user-view', params: { userId: $route.params.userId [+1] }}"</router-link>
我想带我去下一个用户(user/1 到 user/2)
<router-link> :to="{name: 'app-user-view', params: { userId: $route.params.userId [-1] }}"</router-link>
我想带我去上一个用户(user/2 to user/1 )
但是,它不起作用。我究竟做错了什么?请帮忙。谢谢