"HTTP 417: Expectation" errors on web services (no code changes)

"HTTP 417: Expectation" errors on web services (no code changes)

Old forum URL: forums.lhotka.net/forums/t/11080.aspx


rsbaker0 posted on Monday, January 23, 2012

We've had some web services in production for several years now. Evidently, because of some changes at either the client or network level, some clients are just recently failing to connect with an HTTP 417 error.  In at least some cases, I can run the identical code (from the same directory and .config file) connecting to the same web service, and one client will get the 417 error and another one sitting right next to it will not.

In situations where we have an SSL certificate on the web server, we've sometimes been able to work around this by connecting using https rather than http, but not all of our customers who host web services internally have this option readily available.

I know it's not a change that we made recently, because I can run older builds from 2-3 years ago and they will exhibit the same problem.

Any thoughts on how to troubleshoot this?

JonnyBee replied on Monday, January 23, 2012

Could it be related to a proxy server and settings on the ServicePointManager?

http://social.msdn.microsoft.com/Forums/en-US/devdocs/thread/60cd6e6a-4157-4811-8ed3-1e46f9022ea8

http://www.codeproject.com/Articles/94235/The-request-failed-with-HTTP-status-417-Expectatio

http://msdn.microsoft.com/en-us/library/system.net.servicepointmanager.expect100continue.aspx

rsbaker0 replied on Tuesday, January 24, 2012

We tried the "expect100continue" setting for the ServicePointManager, but it resulted in at least an order of magnitude performance degradation.

[EDIT: I expect the performance degradation is because the proxy server is now inspecting every SOAP message passing between the client and web service -- we experienced similar performance problems when using http versus https at some customer sites that had smart firewalls -- https was *much* faster, presumably because the proxy/firewall cannot inspect the packets and gives them a pass]

There are no proxy server settings on the offending client in Internet Explorer, and least accessible via the GUI in Explorer where the settings are usually set. Where else would you look for them?

Copyright (c) Marimer LLC