Consider request uri when caching endpoint discovery
In some environments there are internal requests between servers and
external requests from browser to server. Those might have different
URIs, e.g. when external requests are passed through a proxy server
but internal are not.
This change adds the web request URI (schema + port + host + path)
to the cache identifier when caching endpoint discovery results.