Unity使用UnityWebRequest和Asp.Net下的WebApi交互详解

目录

 

一、Http协议简介

二、Unity和Asp.Net WebApi交互


一、Http协议简介

1.Http协议:(HyperText Transfer Protocol,超文本传输协议)是一种网络传输协议,所有的WWW文件都必须遵守这个标准。Http是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等等)的。


2.Http协议的特点

  1)请求--响应模式,一次请求--响应结束,即断开连接。

  2)http是基于TCP/IP在应用层上的协议,数据传输是可靠的。

  3)只要客户端和服务器知道如何处理数据内容,任何类型的数据都可以通过HTTP发送、接收。但必须指定合适的MIME-type(资源的媒体类型),HTTP是媒体独立的。


3.URL:统一资源定位符,指资源在网络上的位置地址。

              语法格式: protocol :// hostname[:port] / path / [;parameters][?query]#fragment       

              解释说明: 协议:// 域名系统(DNS) 主机名或 IP 地址[:端口] / 路径/ [;参数][?查询参数]#信息片段


4.消息结构:

   1)客户端请求消息

Unity使用UnityWebRequest和Asp.Net下的WebApi交互详解

    2)服务端响应消息

Unity使用UnityWebRequest和Asp.Net下的WebApi交互详解


5.Http协议常用的几种请求方法(Method):

1)GET: 一般用于查询,Get请求会将参数明文显示在URL后面,为不安全的请求方式。

2)POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。

3)PUT:从客户端向服务器传送的数据取代指定的内容。

4)DELETE:请求服务器删除指定的内容。


6.content-Type

1)Content-Type为http请求头和响应头中的信息。表示后面的文档属于什么MIME类型。由于经常要设置Content-Type,因此Request和Response都提供了一个专用的方法setContentType()。

2)常见的content-Type

  a)常见的媒体格式类型如下:

  • text/html : HTML格式
  • text/plain :纯文本格式
  • text/xml : XML格式
  • image/gif :gif图片格式
  • image/jpeg :jpg图片格式
  • image/png:png图片格式

  b)以application开头的媒体格式类型:

  • application/xhtml+xml :XHTML格式
  • application/xml: XML数据格式
  • application/atom+xml :Atom XML聚合格式
  • application/json: JSON数据格式
  • application/pdf:pdf格式
  • application/msword : Word文档格式
  • application/octet-stream : 二进制流数据(如常见的文件下载)
  • application/x-www-form-urlencoded : <form encType=””>中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式)

  3)上传文件之时配合表单提交时常见格式:

  • multipart/form-data : 需要在表单中进行文件上传时使用

7.常见返回码

  • 200 - 请求成功
  • 301 - 资源(网页等)被永久转移到其它URL
  • 404 - 请求的资源(网页等)不存在
  • 500 - 内部服务器错误

二、Unity和Asp.Net WebApi交互

1.需求:客户端使用POST方式提交到服务器

  2)Unity代码示例:

  2)WebApi代码示例: