您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎么進行unity中的http通信,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
前言
Unity3d 是一個跨平臺的引擎,在移動互聯網浪潮之中,尤其是移動游戲3d方向上,Unity3d 毫無疑問是最耀眼的明星。Unity3d的http通信很簡單,也非常好用,下面通過http和php sever交互來簡單介紹一下。
http 提交數據原理
http 協議通過 url來獲取和提交數據 。提交數據的方式 有兩種,一種是get方法,一種是post方法。get一般用于告訴服務器把滿足參數的數據發送給回來。
例如:get 的html代碼如下:
[html] view plaincopy
<form action="search.php" method ="GET">
<username:<inputtypeinputtype="text"name="user"/><br>
<password:<inputtypeinputtype="password "name="pwd"/><br>
<input type="submit"value="login"/>
</form >
post一般是將數據發送給服務器,服務器將這些數據進行處理,比如說存儲到數據庫。
例如:post的html 代碼如下:
[html] view plaincopy
<form action="login.php" method ="POST" >
<username:<inputtypeinputtype="text"name="user"/><br>
<password:<inputtypeinputtype="password "name="pwd"/><br>
<input type="submit"value="login"/>
</form >
其實區別就是提交的方式不一樣,點擊login按鈕后,瀏覽器地址欄里分別顯示如下:
get方法url為:http://127.0.0.1/serach.php?user=hortor&pwd=123
post方法url為:http://127.0.0.1
PHP服務端接收數據方法
服務端針對這兩種方式響應的有兩種方式:
get方法接收數據的方法為 $_GET[user],來接收客戶端發送的user的值。
post方法接收數據的方法為 $_POST[user]也是用來接收客戶端變量user的值。
UNITY WWW類使用方法
unity www 類同樣對應兩種提交數據的方式,常用的兩個構造函數為:
static function WWW (url : String) : WWW
static function WWW (url : String, form : WWWForm) : WWW
第一個函數是通過get方法向服務器發送數據,第二個是用post提交數據,其中WWWForm有個方法叫:AddField(agr : string, value : string),來添加參數。
get例子:
[javascript] view plaincopy
#pragma strict
privatevar url : String = "127.0.0.1/login.php?user=test&pwd=123";
function Start () {
var getData : WWW = WWW(url);
yield getData;
if(getData.error != null) {
Debug.Log(getData.error);
}
else {
Debug.Log(getData.text);
}
}
post例子:
[javascript] view plaincopy
#pragma strict
privatevar url : String = "127.0.0.1/login.php";
function Start () {
var form : WWWForm = new WWWForm();
form.AddField("user", "test");
form.AddField("pwd", "123");
var getData : WWW = WWW(url, form);
yield getData;
if(getData.error != null) {
Debug.Log(getData.error);
}
else {
Debug.Log(getData.text);
}
}
其中yield 這個方法是程序每一幀調用一次,當getData 執行完成,返回結果,這就相當于是異步請求數據。WWW 類有幾個常用的靜態變量,分別為:
1、WWW.text 返回從網頁得到數據,類型為string。
2、WWW.error 返回錯誤信息,比如說超時,網絡連接錯誤等問題。
關于怎么進行unity中的http通信就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。