我正在处理一个奇怪的行为。我点击了一个按钮。链接是一个绝对URL,脚本为“/Auth/StartProcess”。Auth是一个C#后端控制器。我使用ASP.NETCore5。对于前端,我使用Angular 13。这在我的开发环境中工作得很好。我的Web应用程序在localhost上运行时工作得很好。但是,当它部署到测试环境中时,当我单击该按钮时,我收到以下错误:
未被捕获的(在承诺中):错误:无法匹配任何路由。URL段:'验证/启动进程”
如果我只是输入完整的网址,如“https://localhost/auth/startprocess”工作完美。我不事件需要点击按钮,能够让它工作。
StartProcess是AuthController内部的方法。正如您所看到的,这不是一个组件。我不认为我的路由器相关代码有问题,但我还是会分享代码。就像我说的,这在我的开发环境中工作得很好。
主页.组件.html
<div>
<a href=”/Auth/StartProcess” class=”btn btn-primary”>START</a>
</div>
应用程序路由.模块.ts
import { NgModule } from ‘@angular/core’;
import { Routes, RouterModule } from ‘@angular/router’;
import { PagesComponent } from ‘./pages.component’;
const routes: Routes =
[
{
path: ‘home’,
loadChildren: () =>
import(‘./home/home.module’).then((m) => m.HomeModule),
},
{
path: ‘Auth/StartProcess’,
redirectTo: ‘/Auth/StartProcess’
pathMatch: ‘full’,
},
{
path: ‘ ’,
redirectTo: ‘/home’
pathMatch: ‘full’,
},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
页面路由.模块.ts
import { NgModule } from ‘@angular/core’;
import { Routes, RouterModule } from ‘@angular/router’;
import { PagesComponent } from ‘./pages.component’;
const routes: Routes =
[
{
path: ‘home’,
loadChildren: () =>
import(‘./home/home.module’).then((m) => m.HomeModule),
},
{
path: ‘ Auth’,
redirectTo: ‘/StartProcess’
pathMatch: ‘full’,
},
{
path: ‘ ’,
redirectTo: ‘/home’
pathMatch: ‘full’,
},
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class PagesRoutingModule {
}
1条答案
按热度按时间rvpgvaaj1#
假设您要将/Auth/StartProcess重定向到PagesComponent