UnityWWW类HttpContent-T文本类型讲-创新互联

MediaType,即是Internet Media Type,互联网媒体类型;也叫做MIME类型,在Http协议消息头中,使用Content-Type来表示具体请求中的媒体类型信息。

邵原网站制作公司哪家好,找创新互联公司!从网页设计、网站建设、微信开发、APP开发、自适应网站建设等网站项目制作,到程序开发,运营维护。创新互联公司于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联公司

类型格式:type/subtype(;parameter)? type
主类型,任意的字符串,如text,如果是号代表所有;
subtype 子类型,任意的字符串,如html,如果是
号代表所有;
parameter 可选,一些参数,如Accept请求头的q参数, Content-Type的 charset参数。
例如: Content-Type: text/html;charset:utf-8;
常见的媒体格式类型如下:

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

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 : 
中默认的encType,form表单数据被编码为key/value格式发送到服务器(表单默认的提交数据的格式) multipart/form-data : 需要在表单中进行文件上传时,就需要使用该格式

示例代码:

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

/// 
/// Get和Post最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。
/// 
public class HttpTest : MonoBehaviour {

    /// 
    /// get方法
    /// 
    /// 
    IEnumerator Get()
    {
        string fullUrl = @"http://xxxxxx?id=0";//id为参数

        using (WWW www = new WWW(fullUrl))
        {
            yield return www;
            if (www.error != null)
            {
                Debug.LogError("error:" + www.error);
            }
            Debug.Log(www.text);
        }
    }

    /// 
    /// application/json连接类型
    /// 
    /// 
    IEnumerator PostJson()
    {
        string fullUrl = @"http://xxxxxxxx";

        //加入http 头信息
        Dictionary JsonDic = new Dictionary();
        JsonDic.Add("Content-Type", "application/json");

        //body
        SendData sendData = new SendData();
        sendData.app_key = "1bf5376b82f88384ebe2297327ae2f9fe547dfed";
        sendData.time_stamp= "1551174536";
        sendData.nonce_str= "123456789";
        sendData.sign= "1bf5376b82f88384ebe2297327ae2f9fe547dfed";
        sendData.img_type= "URL";

        byte[] data = System.Text.Encoding.Default.GetBytes(JsonUtility.ToJson(sendData));

        using (WWW www = new WWW(fullUrl, data, JsonDic))
        {
            yield return www;
            if (www.error != null)
            {
                Debug.LogError("error:" + www.error);
            }
            Debug.Log(www.text);
        }
    }

    /// 
    /// application/x-www-form-urlencoded连接类型
    /// 
    /// 
    IEnumerator PostForm()
    {
        string fullUrl = @"http://xxxxxxxx";

        //加入http 头信息
        Dictionary JsonDic = new Dictionary();
        JsonDic.Add("Content-Type", "application/x-www-form-urlencoded");
        JsonDic.Add("cache-control", "no-cache");
        JsonDic.Add("Postman-Token", "901451c5-e8c6-4322-8e63-754170323404");

        //body
       wWWForm form = new WWWForm();
        form.AddField("app_key", "1bf5376b82f88384ebe2297327ae2f9fe547dfed");
        form.AddField("time_stamp", "1551174536");
        form.AddField("nonce_str", "123456789");
        form.AddField("sign", "1bf5376b82f88384ebe2297327ae2f9fe547dfed");
        form.AddField("img_type", "URL");

        using (WWW www = new WWW(fullUrl, form.data, JsonDic))
        {
            yield return www;
            if (www.error != null)
            {
                Debug.LogError("error:" + www.error);
            }
            Debug.Log(www.text);
        }
    }
}
//定义的数据结构
[Serializable]
public class SendData
{
    public string app_key;
    public string time_stamp;
    public string nonce_str;
    public string sign;
    public string img_type;
}

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:UnityWWW类HttpContent-T文本类型讲-创新互联
文章转载:http://myzitong.com/article/desogi.html