The HTTP 300 status code means a server can redirect the client to more than one location based on the client’s choice.
This status code is rarely used, and the behavior among browsers is inconsistent. For example, upon encountering the
300 Multiple Choices status code, Webkit-based browsers will redirect you straight to the URL found in the
If you want a user to choose between redirects, the most bulletproof way would be to present them with a list of links (in HTML) to choose from. That would be in line with RFC as well:
[...] the server SHOULD generate a payload in the 300 response containing a list of representation metadata and URI reference(s) from which the user or user agent can choose the one most preferred. [...] A specific format for automatic selection is not defined by this specification because HTTP tries to remain orthogonal to the definition of its payloads.