博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
WebClient DownloadStringAsync/UploadStringAsync和OpenWriteAsync/OpenReadAsync的区别
阅读量:5238 次
发布时间:2019-06-14

本文共 1035 字,大约阅读时间需要 3 分钟。

WebClient使用WebRequest类别提供对资源的存取。WebClient类别相较于HttpWebRequest类别,它比较像是个被封装完成专门处理网路资源存取的类别,例如:依照预设值,当使用WebClient时,该执行个体是不会传送选择性的Http标头,也就是它会依旧你使用的URI产生相对应的Http Header内容,让接收端可以有效撷取需要的内容。这样的好处可以让开发人员依基本的Header来完成任务。但其实对于Header的使用,还是有其限制在的,可以参考

< >这篇文章的介绍,里面提供了那些Header可以操作来向接收端进行沟通。

Method

Description

OpenWriteAysnc

以非同步方式撷取用于将资料传送至资源的,而不封锁呼叫的执行绪。使用POST命令上载HTTP资源。该方法将资料转入资料流中进行传送。

UploadStringAsync

传送至资源,而不封锁呼叫的执行绪。指定上传的URI必须识别出可以接受使用POST方法传送之要求的资源。

DownloadStringAsync

从资源下载,而不封锁呼叫的执行绪。采用GET方法向URI下载指定资源。

OpenReadAsync

以非同步方式从资源传回资料,而不封锁呼叫的执行绪。采用下载封装的方式,让资源回传时是属于一个独立的档案集合。采用GET方法向URI下载指定资源。

上方四种是常用于非同步作业使用的方法。然而在使用WebClient类别需要注意Silverlight针对网路存取的限制,可以参考:< >与< >。另外,也许你会像我一样不太了解为何有一个DownloadStringAsync或UploadStringAsync的方法出现,因为在网路上搜寻看到WebClient类别的范例都是使用另外二种:OpenWriteAsync与OpenReadAsync来储存网路资源。也许你可以依照下方的分类来按需求使用:

〉DownloadStringAsync/UploadStringAsync:适用于当接收端接受传送资料的类型,例如:XML、JSON等其他相关文字类型。

〉OpenWriteAsync/OpenReadAsync:适用接收端使用POST方式接收/取得资料流的类型,例如:可转成Stream的资料料型。

 

转载于:https://www.cnblogs.com/wuzhsh/archive/2012/08/31/2664977.html

你可能感兴趣的文章
day22 01 初识面向对象----简单的人狗大战小游戏
查看>>
递归函数,二分运算,正则表达式
查看>>
Flutter之内置动画(转)
查看>>
MySql优化相关概念的理解笔记
查看>>
数据库解决方案
查看>>
DataContract和DataMember的作用
查看>>
js如何获取response header信息
查看>>
python_文件的打开和关闭
查看>>
ADO.NET介绍
查看>>
iOS: 数据持久化方案
查看>>
【C#】【Thread】Monitor和Lock
查看>>
UVALive - 3635 - Pie(二分)
查看>>
集合类List,set,Map 的遍历方法,用法和区别
查看>>
Scala入门系列(十):函数式编程之集合操作
查看>>
pulseaudio的交叉编译
查看>>
Cracking The Coding Interview 1.1
查看>>
vb.net 浏览文件夹读取指定文件夹下的csv文件 并验证,显示错误信息
查看>>
NetworkInterface的使用
查看>>
元素自动居中显示
查看>>
JDBC 时间处理
查看>>