It is difficult. Here are some suggestions:
- The
webex.Response.ResponseUri
property contains the URI of your proxy server instead of the server you were trying to contact.
- The
webex.Response.StatusCode
property is one that always refers to a proxy problem, e.g. ProxyAuthenticationRequired
. Unfortunately most statuses could refer to either a proxy error or a server error.
- The
webex.Response.Headers
collection contains non-standard entries that you recognise as being generated by your proxy server. For example, the Squid proxy returns the header "X-Squid-Error"
, with its own proprietary set of statuses.
- The
webex.Response.ResponseStream
stream contains an HTML or plain text error message in a format that you recognise as being generated by your proxy server. You might test to see if it contains the URI of your proxy server.
In your catch block, make sure that you log full details of the WebException
object, including all the properties mentioned above. You can then analyse the log data and develop an accurate test for proxy errors.