Вы можете реализовать это следующим образом:
Реализация метода OnStateChange
интерфейса nsIWebProgressListener
.
Проверьте параметр aStateFlags
: если этот параметр содержит флаги STATE_IS_DOCUMENT
и STATE_START
, то выполняется переход к новому местоположению.
Чтобы узнать URL, используйте параметр aRequest
. Он имеет тип nsIRequest
, но приведен к типу nsIChannel
. Затем прочитайте свойство URI
. Содержит URL-адрес, по которому осуществляется переход.
Если URI начинается с «https», прервать навигацию, вызвав метод cancel
параметра aRequest
, передав в качестве параметра NS_BINDING_ABORTED
.