首頁 >後端開發 >C++ >如何使用 C# 在 Unity 中傳送 HTTP 請求(GET、POST、PUT、DELETE)?

如何使用 C# 在 Unity 中傳送 HTTP 請求(GET、POST、PUT、DELETE)?

DDD
DDD原創
2025-01-19 21:17:101049瀏覽

How to Send HTTP Requests (GET, POST, PUT, DELETE) in Unity using C#?

在Unity中使用C#發送HTTP請求(GET、POST、PUT、DELETE)

Unity 提供了強大的功能來簡化HTTP請求的發送,包括GET和POST請求。以下是如何有效率地處理這些請求的完整指南:

GET請求:

使用UnityWebRequest實作GET要求非常簡單:

<code class="language-csharp">UnityWebRequest uwr = UnityWebRequest.Get(uri);
yield return uwr.SendWebRequest();
if (uwr.isNetworkError) Debug.Log("错误: " + uwr.error);
else Debug.Log("接收: " + uwr.downloadHandler.text);</code>

包含表單資料的POST請求:

傳送表單資料需要一個WWWForm實例:

<code class="language-csharp">WWWForm form = new WWWForm();
form.AddField("param1", "value1");
UnityWebRequest uwr = UnityWebRequest.Post(url, form);
yield return uwr.SendWebRequest();</code>

包含JSON資料的POST請求:

對於基於JSON的請求:

<code class="language-csharp">string json = JsonUtility.ToJson(dataObject);
var uwr = new UnityWebRequest(url, "POST");
byte[] jsonToSend = System.Text.UTF8Encoding.UTF8.GetBytes(json);
uwr.uploadHandler = new UploadHandlerRaw(jsonToSend);
uwr.downloadHandler = new DownloadHandlerBuffer();
uwr.SetRequestHeader("Content-Type", "application/json");
yield return uwr.SendWebRequest();</code>

多部分錶單資料與檔案:

<code class="language-csharp">List<IMultipartFormSection> formData = new List<IMultipartFormSection>();
formData.Add(new MultipartFormDataSection("name=John&age=30"));
formData.Add(new MultipartFormFileSection("myFile", "myfile.txt"));
UnityWebRequest uwr = UnityWebRequest.Post(url, formData);
yield return uwr.SendWebRequest();</code>

GET和POST以外的HTTP方法:

  • PUT:

    <code class="language-csharp">  byte[] dataToPut = System.Text.Encoding.UTF8.GetBytes("数据");
      UnityWebRequest uwr = UnityWebRequest.Put(url, dataToPut);
      yield return uwr.SendWebRequest();</code>
  • DELETE:

    <code class="language-csharp">  UnityWebRequest uwr = UnityWebRequest.Delete(url);
      yield return uwr.SendWebRequest();</code>

以上是如何使用 C# 在 Unity 中傳送 HTTP 請求(GET、POST、PUT、DELETE)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn