Verwenden Sie C#, um HTTP-Anfragen (GET, POST, PUT, DELETE) in Unity zu senden
Unity bietet leistungsstarke Funktionen zur Vereinfachung des Sendens von HTTP-Anfragen, einschließlich GET- und POST-Anfragen. Hier finden Sie eine vollständige Anleitung zur effizienten Bearbeitung dieser Anfragen:
GET-Anfrage:
Die Implementierung von GET-Anfragen mit UnityWebRequest
ist sehr einfach:
<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-Anfrage mit Formulardaten:
Für das Senden von Formulardaten ist eine WWWForm
-Instanz erforderlich:
<code class="language-csharp">WWWForm form = new WWWForm(); form.AddField("param1", "value1"); UnityWebRequest uwr = UnityWebRequest.Post(url, form); yield return uwr.SendWebRequest();</code>
POST-Anfrage mit JSON-Daten:
Für JSON-basierte Anfragen:
<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>
Mehrteilige Formulardaten und Dateien:
<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>
Andere HTTP-Methoden als GET und POST:
PUT:
<code class="language-csharp"> byte[] dataToPut = System.Text.Encoding.UTF8.GetBytes("数据"); UnityWebRequest uwr = UnityWebRequest.Put(url, dataToPut); yield return uwr.SendWebRequest();</code>
LÖSCHEN:
<code class="language-csharp"> UnityWebRequest uwr = UnityWebRequest.Delete(url); yield return uwr.SendWebRequest();</code>
Das obige ist der detaillierte Inhalt vonWie sende ich HTTP-Anfragen (GET, POST, PUT, DELETE) in Unity mit C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!