typescript 无法匹配任何访问控制器的路由- URL段错误

oxf4rvwz  于 2022-11-30  发布在  TypeScript
关注(0)|答案(1)|浏览(96)

我正在处理一个奇怪的行为。我点击了一个按钮。链接是一个绝对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 {
}
rvpgvaaj

rvpgvaaj1#

假设您要将/Auth/StartProcess重定向到PagesComponent

const routes: Routes =
[
   {
        path: ‘Auth’,
        loadChildren: () =>
           import(‘./home/home.module’).then((m) => m.HomeModule),
   },

   {
        path: ‘’,
        redirectTo: ‘/Auth’
        pathMatch: ‘full’,
   },
];
const routes: Routes =
[
   {
        path: ‘StartProcess’,
        component: PageComponent,
   },

];

相关问题