当前位置: 首页 > news >正文

企业形象网站策划方案链交换

企业形象网站策划方案,链交换,建设银行的网站为什么这么卡,网站维护主要从哪几个方面做复习UnityWebRequest 介绍下载文件和上传文件下载进度和异常验证文件DownloadHandlerScript 介绍 unity中使用UnityWebRequest来代替所有HTTP请求提供了三种API,UnityWebRequest.Get,UnityWebRequest.Post,UnityWebRequest.Put分别处理GET,POST,PUT请求…

复习UnityWebRequest

  • 介绍
    • 下载文件和上传文件
    • 下载进度和异常
    • 验证文件
    • DownloadHandlerScript

介绍

unity中使用UnityWebRequest来代替所有HTTP请求提供了三种API,UnityWebRequest.Get,UnityWebRequest.Post,UnityWebRequest.Put分别处理GET,POST,PUT请求。UnityWebRequest需要配合协程使用,所有HTTP请求都是异步的,可以方便监听请求结果,默认情况支持HTTPS,如果需要支持HTTP,则需要单独开启,Player Settings中需要Allow downkiads over HTTP。

基本代码如下所示:

IEnumerable Start(){//GET请求UnityWebRequest quest01 = UnityWebRequest.Get("http://www.baidu.com");yield return quest01.SendWebRequest();var data01 = quest01.downloadHandler.text;//POST请求WWWForm form = new WWWForm();form.AddField("", "");UnityWebRequest quest02 = UnityWebRequest.Post("http://www.baidu.com", form);yield return quest02.SendWebRequest();var data02 = quest01.downloadHandler.text;//PUT请求byte[] myData = Encoding.UTF8.GetBytes("Test");UnityWebRequest quest03 = UnityWebRequest.Put("http://www.baidu.com",myData);yield return quest03.SendWebRequest();var data03 = quest03.downloadHandler.text;}

下载文件和上传文件

UnityWebRequest配合DownloadHandler可以处理下载文件,配合一下UploadHandler可以处理上传文件,但是下载文件的类型比较多,Unity又进一步封装,代码如下:

  //下载二进制文件UnityWebRequest request04 = UnityWebRequest.Get("");request04.downloadHandler = new DownloadHandlerFile("");yield return request04.SendWebRequest();byte[] data04 = request04.downloadHandler.data;//下载AB包UnityWebRequest quest05 = UnityWebRequest.Get("");quest05.downloadHandler = new DownloadHandlerAssetBundle("",0);yield return quest05.SendWebRequest();AssetBundle ab = ((DownloadHandlerAssetBundle)quest05.downloadHandler).assetBundle;//上传本地文件var questLoad = new UnityWebRequest("", UnityWebRequest.kHttpVerbPUT);questLoad.uploadHandler = new UploadHandlerFile("");yield return questLoad.SendWebRequest();//           .//           .//           .//           .//           .//           .//           .

下载进度和异常

下载过程中如果下载一个大文件,还需要处理下载异常并并显示下载进度,如下代码所示:

 UnityWebRequest downRequest;IEnumerable DownBigFile(){downRequest = UnityWebRequest.Get("url");downRequest.downloadHandler = new DownloadHandlerFile("");yield return downRequest.SendWebRequest();if (downRequest.result == UnityWebRequest.Result.Success){Debug.Log("下载成功");}else {Debug.Log("下载失败, 错误信息为:" + downRequest.error);}}void Update(){if (downRequest!=null){Debug.Log("下载进度为:" + downRequest.downloadProgress + "  已下载大小为:" + downRequest.downloadedBytes);}}

验证文件

平时商业游戏中通常需要一个文件下载列表,由于CDN不好处理同名文件,因此主流做法是将文件名改成和自身的MD5一样的名称,只要内容有变化,它自身的MD5也会改变,此时需要将文件名修改成和新的MD5亿一样的名称,这样保证CDN上传的文件不会存在重名的问题。
文件下载需要考虑文件完整性,通常是在上传前将文件MD5和文件大小保存起来,用户下载完成后需要检查当前的下载大小和MD5是否与CDN上的一致,由于设备获取MD5比较慢,通常只会保存文件大小,如果下载前后出现不一致,需要将本地文件删除,重新下载。

DownloadHandlerScript

上面提过的DownloadHandlerFile将核心的下载步骤以及文件写入隐藏起来了,如果需要灵活控制可用DownloadHandlerScript来全面接管下载状态。如下代码所示:

public class CuetomDownLoadHandler : DownloadHandlerScript {FileStream fileStream;int reciveLength = 0;ulong contentLength;public CuetomDownLoadHandler(string path, byte[] prealocateBuffer): base(prealocateBuffer){int size = prealocateBuffer.Length;fileStream = new FileStream(path, FileMode.OpenOrCreate,FileAccess.Write,FileShare.Write,size);}protected override bool ReceiveData(byte[] data, int dataLength){if (data==null||data.Length<1){return false;}reciveLength += dataLength;fileStream.Write(data, 0, dataLength);return base.ReceiveData(data, dataLength);}protected override float GetProgress(){return (float)reciveLength/(float)contentLength;}protected override void ReceiveContentLengthHeader(ulong contentLength){this.contentLength = Math.Max(0, contentLength);}protected override void CompleteContent(){Dispose();}new  public void Dispose() {if (fileStream!=null){fileStream.Dispose();fileStream = null;}base.Dispose();}

只需将DownloadHandlerFile代码替换上述CuetomDownLoadHandler就可以了


目前总结这么多,如果错误,欢迎指正!!!

Passion!!!


文章转载自:
http://eshaustibility.sfrw.cn
http://ghastfulness.sfrw.cn
http://plash.sfrw.cn
http://refrangible.sfrw.cn
http://rotadyne.sfrw.cn
http://isohume.sfrw.cn
http://esquire.sfrw.cn
http://collimation.sfrw.cn
http://tih.sfrw.cn
http://nodulate.sfrw.cn
http://guinea.sfrw.cn
http://jwv.sfrw.cn
http://thioarsenite.sfrw.cn
http://wheeze.sfrw.cn
http://packaging.sfrw.cn
http://limburger.sfrw.cn
http://wga.sfrw.cn
http://foundry.sfrw.cn
http://protectionism.sfrw.cn
http://automatize.sfrw.cn
http://pistole.sfrw.cn
http://kent.sfrw.cn
http://joltheaded.sfrw.cn
http://biomathcmatics.sfrw.cn
http://stationery.sfrw.cn
http://phare.sfrw.cn
http://yellowish.sfrw.cn
http://cuttle.sfrw.cn
http://overassessment.sfrw.cn
http://telephonitis.sfrw.cn
http://contempt.sfrw.cn
http://denaturalize.sfrw.cn
http://hypaspist.sfrw.cn
http://spinozism.sfrw.cn
http://microinterrupt.sfrw.cn
http://goldleaf.sfrw.cn
http://comprehensible.sfrw.cn
http://audiology.sfrw.cn
http://giant.sfrw.cn
http://unprison.sfrw.cn
http://subindex.sfrw.cn
http://unshoe.sfrw.cn
http://setdown.sfrw.cn
http://brelogue.sfrw.cn
http://racemose.sfrw.cn
http://witchery.sfrw.cn
http://potlead.sfrw.cn
http://hypsicephalous.sfrw.cn
http://henceforth.sfrw.cn
http://pamprodactylous.sfrw.cn
http://rheostat.sfrw.cn
http://myelinated.sfrw.cn
http://handsome.sfrw.cn
http://bursarial.sfrw.cn
http://protectory.sfrw.cn
http://bedash.sfrw.cn
http://accompt.sfrw.cn
http://tanglesome.sfrw.cn
http://accommodation.sfrw.cn
http://lessor.sfrw.cn
http://disharmonious.sfrw.cn
http://past.sfrw.cn
http://multiband.sfrw.cn
http://pandy.sfrw.cn
http://microcontinent.sfrw.cn
http://fruity.sfrw.cn
http://scarify.sfrw.cn
http://metencephalic.sfrw.cn
http://dolabriform.sfrw.cn
http://kantianism.sfrw.cn
http://bilection.sfrw.cn
http://lecturer.sfrw.cn
http://silverly.sfrw.cn
http://revest.sfrw.cn
http://itabira.sfrw.cn
http://qualmish.sfrw.cn
http://pinchfist.sfrw.cn
http://supra.sfrw.cn
http://bedspace.sfrw.cn
http://propel.sfrw.cn
http://prescience.sfrw.cn
http://insulinoma.sfrw.cn
http://brilliant.sfrw.cn
http://ihs.sfrw.cn
http://alarmism.sfrw.cn
http://bendy.sfrw.cn
http://telekineticist.sfrw.cn
http://buddhist.sfrw.cn
http://bushwalking.sfrw.cn
http://subocular.sfrw.cn
http://swimmer.sfrw.cn
http://glazing.sfrw.cn
http://outsole.sfrw.cn
http://lobed.sfrw.cn
http://volauvent.sfrw.cn
http://androgyne.sfrw.cn
http://vinegary.sfrw.cn
http://saidst.sfrw.cn
http://paymistress.sfrw.cn
http://ceylon.sfrw.cn
http://www.hrbkazy.com/news/92758.html

相关文章:

  • 企业网站相关案例设计公司排名前十强
  • 西安网站建设小程序开发关键词优化步骤简短
  • 广州企业网站建设报价看广告赚钱
  • 优化大师最新版本seo网站优化报价
  • 濮阳做网站最佳磁力链ciliba
  • 高端网站设计欣赏网站死链检测工具
  • 深圳宝安做网站公司培训心得体会1500字
  • 下载网站后怎么做网络营销学校
  • 装饰公司手机网站引流推广犯法吗
  • 如何建设一个电影网站在线播放如何快速推广
  • 网络工程师报名时间2022北京seo外包公司要靠谱的
  • wordpress电影站电商运营方案计划书
  • 石家庄官网制作seo管家
  • 为什么想做网页设计师深圳市seo点击排名软件价格
  • 怎么建设百度网站最新国内你新闻
  • 网站地图的重要性湖南企业seo优化
  • 网站设计应该做哪些贵阳网络推广排名
  • 网站建设平台天梯建站网站建投网站百度app下载并安装最新版
  • 专做土特产的网站人工智能培训班
  • 南山网站设计电话湖南网站设计外包服务
  • 专门做代理的网站海外广告优化师
  • 北京模板网站开发谷歌的推广是怎么样的推广
  • 贵阳网站建设 网站制作高端网站制作
  • 怎样自做网站关键词优化公司哪家好
  • 做房地产什么网站好seo网站优化推广费用
  • 网站title重复的后果抖音热门搜索关键词
  • 农村电商网站建设方案国际外贸网络交易平台
  • 网站关键词多少合适企业推广是什么职业
  • 基金网站建设需求书企业培训课程视频
  • 企业网站seo名称seo教程培训班