Unity-笔记-001-实现Http接口

版权声明:转载请注明出处 https://blog.csdn.net/pgw00k/article/details/53222634

1.Http协议中常用接口有GET和POST。
2.GET接口传输的数据量比较小,一般用于短字节的字符串传递。
3.POST接口能够传输的数据量较大,一般用于图片、音频等传递。
4.在Unity中,有两种方式实现对接口的调用,即传统C#的流(Stream)调用和Unity提供的WWW调用。
4.1Unity提供的WWW调用示例:

//上传数据,WWW类中直接提供了相应的函数
//http://127.0.0.1/add_project为后台提供的Post接口
byte[] byteArray = System.Text.Encoding.UTF8.GetBytes("Post Success.");
WWW m_www = new WWW("http://127.0.0.1/add_project", byteArray);
//获取数据,使用WWWForm类
//WWWForm.data值为byte[]类型
WWWForm form = new WWWForm();
WWW m_www_2 = new ("http://127.0.0.1/add_project",form);
Debug.log("WWWFormData:"+form.data);


4.2用C#传统流(Stream)方法调用

string url = "http://192.168.1.6/add_project";
postData = "Test Success.";
WebRequest wRequest = WebRequest.Create(url);//需要System.Net命名空间
wRequest.ContentLength = postData.Length;
wRequest.Method = "POST";//注意大小写
wRequest.ContentType = "application/octet-stream";//类型很多


//Post上传数据给URL
StreamWriter sw = new StreamWrite(wRequest.GetRequestStream());
sw.Write(postData);
sw.Flush();
sw.Close();
sw.Dispose();


//获取值,问题多多,测试不成功,谨慎使用
WebResponse wResponse = wRequest.GetResponse();
Stream stream = wResponse.GetResponseStream();
StreamReader reader = new StreamReader(stream, System.Text.Encoding.Default);
string str = reader.ReadToEnd();   //url返回的值

猜你喜欢

转载自blog.csdn.net/pgw00k/article/details/53222634