Скрыть параметры запроса после анализа их в моем URL - PullRequest
0 голосов
/ 14 июня 2019

мой веб-интерфейс находится в http://host:4200, и когда другой веб-интерфейс хочет открыть его, например, с помощью window.open (http://host:4200? Username = a & отдела = b ), так что это http://host:4200? Username = a & отдела = b будет в адресной строке. Как я могу удалить параметры запроса из этого URL?

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

const url1 = window.location.toString();
const sanitizedUrl = url1.substring(0, url1.indexOf('?'));
window.history.replaceState({}, document.title, sanitizedUrl);

Этомой код cpp.component.ts, который мне нужен для чтения параметров запроса, с угловым 5,

 @Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {

  username = '';
  department = '';  

  constructor(
    private feedbackService: ApiService,
    private titleService: Title,
     private route: ActivatedRoute) {
  }

  ngOnInit() {

    this.route.queryParams.subscribe(params => {
      if (params.hasOwnProperty('username')) {
        this.username = params['username'];
      }

      if (params.hasOwnProperty('department')) {
        this.department = params['department'];
      }

    });
  }

1 Ответ

0 голосов
/ 14 июня 2019

Вы можете использовать свойство skipurlchange с router.navigate

constructor(private router:Router){}

this.router.navigate(['/yourview'], { queryParams:  youParam ,skipLocationChange: true });
...