wcf文件上传时碰到的配置问题

1.远程服务器返回了意外相应:(413) Request Entity Too Large

修改客户端配置maxReceivedMessageSize="2147483647"


<bindings>
<basicHttpBinding>
<binding name="BasicHttpBinding_WcfService" maxBufferSize="2147483647"
maxReceivedMessageSize="2147483647">
<security mode="None" />
</binding>
</basicHttpBinding>
</bindings>

并在服务端修改webconfig,加入binding节点并配置

 <binding name="LargeDataTransferServicesBinding" maxReceivedMessageSize="2147483647" messageEncoding="Text" transferMode="Streamed" sendTimeout="00:10:00" >            </binding>

加入Services节点,并配置 name和contract(contract保持与服务的类相同)。


 <services>
<service name="ResourceService.ResourceService">
<endpoint address="" binding="basicHttpBinding"
bindingConfiguration="LargeDataTransferServicesBinding" name="XXX" contract="ResourceService.IResourceService" />
</service>
</services>

2.二进制传输时由于wcf默认的传递数据大小仅为64K,会报:WCF 读取 XML 数据时,超出最大数组长度配额(16384)。通过更改在创建 XML
读取器时所使用的 XmlDictionaryReaderQuotas 对象的 MaxArrayLength 属性,可增加此配额。

修改客户端 ,加入readerQuotas。

 <binding name="BasicHttpBinding_IResourceService" maxReceivedMessageSize="2147483647" >
<readerQuotas maxDepth="32" maxStringContentLength="20971520" maxArrayLength="20971520"
maxBytesPerRead="40960" maxNameTableCharCount="163840"/>
</binding>

修改服务器端,加入readerQuotas

   <binding name="LargeDataTransferServicesBinding" maxReceivedMessageSize="2147483647" messageEncoding="Text" transferMode="Streamed" sendTimeout="00:10:00" >
<readerQuotas maxStringContentLength="20971520" maxArrayLength="20971520"/>
</binding>

其他错误 可参考:http://blog.csdn.net/educast/article/details/4637246

wcf文件上传时碰到的配置问题,布布扣,bubuko.com

时间: 2024-10-04 21:26:48

wcf文件上传时碰到的配置问题的相关文章

Extjs中用dwr实现文件上传时,fileuploadfield不能正常显示的问题

当使用DWR调用Extjs的fileuploadfield 来做文件上传时,不能实现上传操作,需要修改dwr对应jar包中的engine.js文件 将1808行 var clone =value.cloneNode(true); 1812行  value.parentNode.insertBefore(clone,value); 注释掉 通过  var file = dwr.util.getValue("uploadFile");  获取fileuploadfield 对应的值 版权声

用Struts2实现文件上传时显示进度条功能

最近在做一个资源共享的项目中,采用了Struts2.1.8+Spring2.5.6+hibernate3.32的框架整合方式进行开发.在文件上传这块,因为需要实现文件上传时显示进度条的功能,所以尝试了一下.怕以后忘记,先贴出来分享下.   要在上传文件时能显示进度条,首先需要实时的获知web服务端接收了多少字节,以及文件总大小,这里我们在页面上使用AJAX技术每一秒向服务器发送一次请求来获得需要的实时上传信息.但是当我们使用struts2后怎么在服务端获得实时的上传大小呢?这里需要用到commo

文件上传时异常Invalid field value for field &quot;**&quot;与enctype=&quot;multipart/form-data&quot;

在做文件上传时,有一个form标签的属性必须要加上. 文件上传的form若如下面所写,则会报异常:Invalid field value for field "**",原因是:表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码.默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传:只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操

jQuery插件AjaxFileUpload实现ajax文件上传时老是执行error方法 问题原因

今天在用jQuery插件AjaxFileUpload实现ajax文件上传时,遇到一个问题,如图: 老是执行error,无法执行succes方法,追踪ajaxfileupload.js源码发现: 当执行if(type=="json")    eval("data = "+data);会抛出异常,导致在处理异常的时候将status = "error" 因此一直执行error方法. 上网查询,得知eval函数是用来执行一段js代码,而并不是如我所想的反

文件上传时,上传到webapps目录下的文件会自动删除

1:文件上传时,上传到webapps目录下的文件会自动删除的原因? tomcat目录下的webapps 文件夹是部署目录,当重新部署服务,上传的文件不在部署文件的范畴内,即此时开发工具中没有上传的文件,所以上传的文件就没有了. 2:解决方法 把文件上传路径设置到webapps目录之外,可以在Tomcat目录下建立一个文件夹,如:upload 3:简单实现 html文件: <!DOCTYPE html> <html> <head> <meta charset=&qu

电脑总是在另存文件或者打开文件上传时的对话框卡死怎么办?

电脑总是在另存文件或者打开文件上传时的对话框卡死几分钟才会好? 困惑了好久的问题,今天要解决了,原来是主题搞的鬼,因为喜欢 机器人总动员,就安装了这个主题. 各种杀毒,各种百度,Google都没有解决. 纪念一下吧!! 卸载主题

关于uploadifive 文件上传时出现406错误解决办法

最近在做一个项目,里面涉及到文件上传的问题,我们使用的文件上传插件式uploadifive(是收费的),将插件配置完成后进行测试时发现插件的回调函数不能正常执行,经过排查发现执行了ONERRER函数,说明插件报错了.查看控制台发现后台并没有错误信息.说明是前台的问题,经过仔细检查发现前台代码并没有问题,查看状态码发现,浏览器报406错误.经过上网查找,发现有人说是没有加入<mvc:annotation-driven /> 配置的问题.于是试着加入配置,果然好使了.但是真正通过此插件返回数据的时

Linux 文件上传时无法创建新路径,mkdirs也返回false。

web项目,文件上传到linux服务器时无法创建新路径,java.io.File 不会自动创建路径,手动mkdirs也是返回false,检查了所有代码,没发现问题. 经同事提醒,linux中的tomcat服务使用的用户是tomcat,而目标路径portalFiles 的所有者是root,所以无权在目标路径创建子路径. 使用 chown -R tomcat:tomcat portalFiles 递归修改portalFiles 路径下的所有者.

文件上传时用window弹窗第二次以后fieldLabel值显示重复

今天在项目中遇到一个棘手的问题,在上传附件的时候,window弹窗,第一次的时候是正常的,win.hide() 后,第二次fieldLabel值会重复显示,如下图: 因为window窗口中只有"附件"重复了,"备注"字段没有重复,所以怀疑是因为"附件"的写法有问题 "附件"字段对应的代码如下,用的   inpuType:'file' name : "uploadFile", // id : "up