HTTP 417解决方案
在一次模拟HTPP请求时,本人在项目中的一般处理程序中调用客户接口返回非成功的结果。为了方便调试,所以将核心代码拷贝至控制台中进逐个调试。
在控制台中,启动调试时提示:
未经处理的异常: System.Net.WebException: 远程服务器返回错误: (417) Expectation
failed。
由于代码与在一般处理程序中的一致,并无区别。后来由于之前在一次处理中文乱码的经验中,在其他环境下面调试发现并无乱码,经人提醒将Web.config拷贝至新的测试环境下则发现了乱码并进行调试解决。有了该经历,我在怀疑是否因为配置文件的原因导致的。并将Web.config中的所有配置拷贝至app.config中。启动后毅然发现错误消除了,后经逐步删除各个节点启动发现在<system.net>节点中某个节点配置导致。
配置节点如下:
<system.net>
<settings>
<servicePointManager expect100Continue="false"/>
</settings>
</system.net>
后经继续搜索找到在发起HTTP请求时在代码前设置如下也可解决HTTP 417
// 摘要:
//获取或设置一个 System.Boolean 值,该值确定是否使用 100-Continue 行为。
//
// 返回结果:
//若要启用 100-Continue 行为,则为 true。默认值为 true。
System.Net.ServicePointManager.Expect100Continue = false;
解决原理应该是设置100-Continue 行为 false,一个是通过配置文件设置,一个是通过代码实时设置,异曲同工。
HTTP 417解决方案的更多相关文章
- 搭建Hive所遇到的坑
##一.基本功能: 1.启动hive时报错 java.lang.ExceptionInInitializerError at java.lang.Class.forName0(Native Metho ...
- C#进阶系列——WebApi 异常处理解决方案
前言:上篇C#进阶系列——WebApi接口传参不再困惑:传参详解介绍了WebApi参数的传递,这篇来看看WebApi里面异常的处理.关于异常处理,作为程序员的我们肯定不陌生,记得在介绍 AOP 的时候 ...
- 调用webservice 417
在调用webservice时有些服务器一直返回“远程服务器返回错误: (417) Expectation failed” 这个提示,解决方案: 在调用代码的最开始加入如下一句:System.Net. ...
- IIS7.0出错的解决方案 IIS 状态代码:IIS详细错误代码以及解释
一.请求筛选模块被配置为拒绝包含双重转义序列的请求.HTTP 错误 404.11 - Not Found 1.单击 开始 . 在 开始搜索 框中, 键入 Notepad. 右击 记事本 , 然后单 ...
- 使用c3p0与DBCP连接池,造成的MySql 8小时问题解决方案
转自:http://blog.csdn.net/wangfayinn/article/details/24623575 c3p0数据库连接池mysql8小时 目录(?)[-] 基本问题解决 项目环境 ...
- Docker网络解决方案 - Weave部署记录
前面说到了Flannel的部署,今天这里说下Docker跨主机容器间网络通信的另一个工具Weave的使用.当容器分布在多个不同的主机上时,这些容器之间的相互通信变得复杂起来.容器在不同主机之间都使用的 ...
- Kaggle泰坦尼克数据科学解决方案
原文地址如下: https://www.kaggle.com/startupsci/titanic-data-science-solutions --------------------------- ...
- HTTP中常见的各种状态码详解及解决方案
总结了一些常见的http的状态码,以及常见的解决方案. 一.各范围内状态码大致含义 1xx:临时响应(Informational),需要请求者继续执行操作的状态代码,表示服务器正在接受请求. 2xx: ...
- cache buffers chains以及热块解决方案
cache buffers chains以及热块解决方案 今天是2013-10-10,今天下午我调休了,中午饭过后从14点一直睡到16点,这种感觉真爽. 之前学习过关于buffer cache的ca ...
随机推荐
- jQuery获取鼠标移动方向
<!doctype html> <html> <head> <meta http-equiv="Content-Type&q ...
- 在COM接口中不要使用同时出现只是大小写不同的名字作为属性名、函数名或者参数名
博客搬到了fresky.github.io - Dawei XU,请各位看官挪步.最新的一篇是:在COM接口中不要使用同时出现只是大小写不同的名字作为属性名.函数名或者参数名.
- [C#]工具类—FTP上传下载
public class FtpHelper { /// <summary> /// ftp方式上传 /// </summary> public static int Uplo ...
- netbeans下将全部jar包打成一个,俗称fat jar
netbeans的java项目中.默认会将配置好的外部引用jar包,复制到dist文件夹的lib文件夹中去.假设须要公布出去.就须要将dist文件夹生成的jar和lib文件夹都拷贝出去公布,不方便. ...
- 正尝试在 OS 载入程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内执行托管代码,这样做会导致应用程序挂起。
出错提示: 正尝试在 OS 载入程序锁内执行托管代码. 不要尝试在 DllMain 或映像初始化函数内执行托管代码,这样做会导致应用程序挂起. 原因分析: .NET2.0中添加了42种非常强大的调试助 ...
- java中synchronized使用方法
synchronized的一个简单样例 public class TextThread { /** * @param args */ public static void main(String[ ...
- Android两个控件叠在一起,如何让被挡住的控件显示出来
Android两个控件叠在一起,如何让被挡住的控件显示出来 问题 : 两个控件叠在一起,如何让被挡住的控件显示出来? 比如A,B两个控件,A被B挡住,目前A要显示出来,B不能被隐藏,A的高度只有那么一 ...
- [HTTP] Origins, CROS, Preflight
Origins made up of three parts the data scheme, the hostname and the prot. It is important to know t ...
- [置顶] asp.net(c#)中相对路径(虚拟路径)和物理磁盘路径的转换
物理路径就是磁盘路径,也就是说是在磁盘上的位置,虚拟路径也就是web页面上的路径,是相对于应用程序而言的 /// <summary> /// 将物理路径转换成相对路径 /// </s ...
- How to: cgminer (Bitcoin, Litecoin etc.) + AMD Radeon driver install on CentOS
UPDATE 7/7/13: If you want to use Catalyst drivers version 12.8 you will find that X won’t start (er ...