UN4L7——WWWFrom类
UN4L7——WWWFrom类
WWWFrom
上节课学习了使用WWW
类来下载数据,如果想要使用WWW
上传数据时,就需要配合WWWFrom
类进行使用了
而WWWFrom
主要就是用于集成数据的,我们可以设置上传的参数或者2进制数据
当结合WWWFrom
上传数据时,它主要用到的请求类型是Post
,它使用Http协议进行上传处理
注意:使用WWW
结合WWWFrom
上传数据一般需要配合后端程序制定上传规则
WWW
结合WWWFrom
上传数据,需要配合后端服务器来指定上传规则
也就是说我们上传的数据,后端需要知道收到数据后应该如何处理
通过这种方式我们没办法像C#类当中完成文件的上传,但是该方式非常适合用于制作短连接游戏的前端网络层
我们可以对WWW
进行二次封装,专门用于上传自定义消息给对应的Web服务器
WWWFrom类的常用方法和变量
该类当中我们主要就使用方法,相关变量很少使用,我们主要就着重讲解方法
-
WWWForm()
:构造函数1
WWWForm data = new WWWForm();
-
AddBinaryData()
:添加二进制数据- 参数一:字段名
- 参数二:要上传的字节数组
- 参数三:上传到服务器后该二进制数据的文件名(可选)
- 参数四:媒体类型(可选,相当于Http的ContentType)
1
2
3
4data.AddBinaryData("file",
File.ReadAllBytes(Application.streamingAssetsPath + "/test.png"),
"WWWUpLoad.png",
"application/octet-stream"); -
AddField()
:添加字段可以在上传消息时接受一些参数的值
- 参数一:字段名
- 参数二:字段名对应的值(
string
或者int
) - 参数三:如果值是
string
,则字符编码是什么(可选)
1
2data.AddField("Name", "MrTang", Encoding.UTF8);
data.AddField("Age", 99);
利用WWW类和WWWFrom类来异步上传文件
注意,由该方法上传的数据必须要有服务端的后端程序员配合才能让传输的数据可用,否则服务器接收到了数据后也不能处理
利用WWW
类和WWWFrom
类来异步上传文件非常简单
只需要在实例化WWW
对象前实例化一个WWWForm
对象,向该对象添加字段(参数),添加二进制数据(要传输的内容)
然后在实例化WWW
对象时传入该WWWForm
对象,路径为文件要上传到服务器的哪个位置上
1 | void Start() |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 文KRIFE齐的博客!