Getting the value of loaderInfo.url from a display object will give you the URL of the HTML page that contains the OpenFL app. However, I don't think that this value will get updated if the HTML History API is used to modify the URL.
Flash didn't have a native way to modify browser history either. I think that there were third-party Flash libraries that could, but as I recall, they used ExternalInterface to communicate with JS.
For RouterNavigator, I used the History API directly. Haxe provides externs for it automatically when targeting JS. Basic example of updating the URL:
var htmlWindow = cast(js.Lib.global, js.html.Window);
htmlWindow.history.pushState({}, null, newURL);
To listen for URL changes (such as when the user hits the back button):
htmlWindow.addEventListener("popstate", htmlWindow_popstateHandler);
For RouterNavigator, I exposed some public methods like push(), goBack(), etc. to modify the history, which delegate to the HTML History API. I guess that's probably the Feathers-idiomatic way to do it.