Q
|
When performing an extended property check, BrowserHawk is redirecting users to an invalid URL. How can I fix this or tell BrowserHawk exactly what URL to use?
|
A
|
Extended property requests require a redirect for BrowserHawk to send the browser's test results back to the server. By default BrowserHawk determines this URL automatically. For the vast majority of sites this process works perfectly.
However, some sites do load balancing or redirects in such a way that the host or port that the server reports isn't the host or port which needs to be used in the redirect. This causes clients to redirect to an invalid URL.
If you see this behavior, set the ServerURL property to your own URL base to override the automatic host/port detection. This can be set as the server.url external property in your browserhawk.properties file, or set dynamically per request using the ExtendedOptions ServerURL property. Using this property you should specify the protocol, host, and port but nothing more. BrowserHawk auto-detects the URI path. Note that if you use the ExtendedOptions property to set this value, you MUST do so prior to calling the GetExtendedBrowser method (.NET) or the getExtendedBrowser method (BH4J).
Futhermore - some sites with advanced forward or redirect logic may change the URI portion of the request as well (changing extra path information into parameters, for example). This can manifest itself by the server attempting to use the internal, real URL, instead of the public facing URL that is required.
In these cases you should set the ServerURLComplete property of the ExtendedOptions class to fully specify the path for the redirect. Include the protocol, host, port, and URI path. This property is page-specific, and therefore can only be set at runtime.
|