Angular 4 игнорирование URL и перенаправление в другое место - PullRequest
0 голосов
/ 23 января 2020

Отказ от ответственности

Я на самом деле не Angular ученый, я только что обработал заявку и сказал: «Это твое сейчас, разрабатывай», я gr asp основы, но я не Раньше пришлось идти намного дальше от Тур героев. Это из пути ...

У меня есть приложение, которое использует OAuth-аутентификацию GitHub API с URL-адресом обратного вызова, поэтому я перенаправляю пользователей в GitHub, и после того, как они входят в систему и соглашаются на запрашиваемую авторизацию, GitHub перенаправляет их на URL, который я там установил.

URL, по которому нужно перейти:

http://localhost: 4500 / github_callback / {code} / {organization} / {repository}? Code = {github auth code}

Теперь этот URL предположительно настроен в модуле маршрутизатора, и все выглядит хорошо на начальном этапе AFAIK, но он мгновенно перенаправляет на другой URL (перенаправляет на http://localhost: 4500 / tdd, но на самом деле это компонент Dashboard, не уверен, почему это происходит). Странно то, что если я просто нажму кнопку «Назад» в браузере после перенаправления, я на самом деле попаду на компонент, который хочу достичь. (но опять же, URL-адрес немного отличается, это http://localhost: 4500 / tdd / {code} / {organization} / {repository}? code = {github auth code})

Я пытался просто принудительно нажимать на URL локально (я не вижу необходимости на самом деле go назад и вперед в GitHub, но если какой-то фактор вызывается извне, я оставил это как указано), но это не так т работа. Перенаправляет на тот же URL, что и раньше, но


В app-routing.module.ts:

...
{
    path: 'dashboard',
    component: DashboardComponent,
    canActivate: [AuthGuardService]
  },
 {
    path: 'github_callback/:processOperation/:owner/:repo',
    component: GithubCallbackComponent,
    canActivate: [AuthGuardService],
  },
...

В app-module.ts:

@NgModule({
  declarations: [
    ...
    GithubCallbackComponent,
    ...
  ],

Я не вижу, чтобы AuthGuardService вызывался, когда я go напрямую; если я делаю трюк Back, чтобы поразить компонент, я вижу некоторые записи, которые я добавил на AuthGuardService, где я вижу, что он получил правильные routerConfig и т. д. c, так что я не думаю, что это проблема там.

Что может быть причиной того, что Angular полностью игнорирует мой URL, если я просто вставлю его в браузер и попытаюсь достучаться до него?

Большое спасибо за предоставленный ввод !!

...