今年马上就要结束了, 唉,没有什么好说的
今天,看了又看了一些VB9的东西, 唉~太多了
今年即将结束,回首一下, 放松了一年啊~
年初,期末结束之后, 就一直这样,过了一年了~ 唉~
刚刚下载一个Encoder,准备压缩一个视频~
^_^,关于我每天的事情
啊,有一个周末了~
今天,早上是被电话叫起来的,是同学,理由是今天交毕业设计(他们比我晚半年毕业)
然后,快10点了,准备听课,然后,突然。。。。又停电了~
吸取了上次教训,这次赌注了一把,关闭下载,然后关掉显示器(失败的是,忘了关闭,分布式计算了)
幸运的是挺过去了~~
接下来,今天,做的,感觉很傻的事,看到WebCast 升级到Live Meeting 2007 就赶紧升级了,但系统不进去,后来,看到了网站, 发现一句话
“ MSDN中文网络广播所依托的Live Meeting平台将于11月16日升级到Office Live Meeting 2007,如果您在11月16日以后收听网络广播,系统将会自动提示您下载最新版本。”
我晕了~
PS。今天,用PS合图来的, 结果,合了半天,也没搞定~
刚刚用Live Writer 更新了一下样式,本来这个需要访问网站才可以,因为Blog被封,可定是不可能了,结果,突然下载完了样式,吓了一跳啊~~
打开网站看看,啊,进来了!爽啊~
我用的网络是沈阳网通ADSL,2007-10-1日晚成功访问。
不知道这回能坚持多久呢~~
_________________________________________________________
PS.感觉这个Live Writer在下载完样式后,很不方便呢~~
总像是每按一个回车就出来一个DIV似的,然后串行的样子很难看啊~~
刚刚看望《健康全裸游泳部》13话,逗死了~~不过,有一个动画没有了,有点寂寞啊~~~
华盟字幕的网站挂掉了,已经有很长时间了,汗啊~一直没有访问进去。。。
不过,从昨天开始,这个机器开始嚎叫了(风扇),不知道这个古董还能坚持多久。。。
大浪过后,风平浪静,我看到了彩虹。。。(我还没有升天哦~~)
这个文档使用 Google文件发布,如有浏览问题,请浏览http://docs.google.com/Doc?id=dggdkn6_17cthdx3
最近,在写程序的时候为了大数据传输,而使用的WSE 但使用之后,在客户端调用出现一下问题
请求因 HTTP 状态 415 失败: Unsupported Media Type。
如果,你是先配置好服务器后,在VS中直接就用添加Web Services了,然后就出问题了,那么下面告诉你解决方法
其实,我们都丢了一步, 直接使用VS生成的代理,没有启动 WSE功能,更没有 MTOM,所以报错了
创建支持WSE代理很简单,
打开客户端程序,使用 WSE 配置工具,打开配置文件(App.config),选上Enable this project for Web Services Enhancements
(不知道直接在VS里右键单击工程,选择 WSE Settings 3.0 会不会自动添加 Microsoft.web.services3,我这里是装完VS SP1后才按的WSE,所以,没有这个东西)
之后,在向项目里面添加Web服务的引用,系统会自动生成2个代理类
Public Class Service1
Inherits System.Web.Services.Protocols.SoapHttpClient ---->VS默认生成的
Public Class Service1Wse
Inherits Microsoft.Web.Services3.WebServicesClientProtocol ——>> 支持 WSE的
但是,如果要这么使用,还会有问题
还需要使用WSE配置工具,打开客户端的配置文件,在 Messaging 选项卡下 将 Client Mode 设成 On
这样就可以使用了
如果数据很大(>4M) 那么还需要 更改 配置文件,加上<maxMessageLength value="-1" />
<microsoft.web.services3>
<messaging>
<maxMessageLength value="-1" />
<mtom serverMode="optional" clientMode="On" />
</messaging>
</microsoft.web.services3>
下面,说说Web 服务的配置
在VS里打开Web Services,右键单击工程,选择WSE Settings 3.0 ,启动WSE配置工具 ,(好像安装完VS SP1之后,这个东西就不会被装上),在General 选项卡里的 2个 enable 选上
之后在Messaging 选项卡,开启 Server Mode 为 optional 或always
optional 是 不管请求是否使用MTOM,都是用MTOM响应
always 是 请求和响应 都是MTOM
之后,OK,就可以了
这个过程主要在 Web.config中产生
<microsoft.web.services3>
<messaging>
<mtom serverMode="optional" clientMode="On" />
</messaging>
</microsoft.web.services3>
如果传输数据大于4M那么就需要更改HTTP Runtime 设置 默认设置
<system.web>
<httpRuntime maxRequestLength="409600" executionTimeout="300" />
</system.web>
PS. 官方事例里配置是
<configuration>
<system.web>
<httpRuntime maxMessageLength="409600"
executionTimeoutInSeconds="300"/>
</system.web>
</configuration>
但 HttpRuntime 里没有 MaxMessageLength 也没有 那个ExecutionTimeoutinSeconds
之后更改消息的大小,设置 maxMessageLength value="-1"
<configuration>
<microsoft.web.services3>
<messaging>
<maxMessageLength value="-1" />
</messaging>
</microsoft.web.services3>
</configuration>
官方事例链接
How to: Enable a Web Service to Send and Receive Large Amounts of Data
How to: Send and Receive Large Amounts of Data to and from a Web Service
How to: Create a Proxy Class to Communicate with a Web Service
GTeam |
访问此论坛 |