Heim >Backend-Entwicklung >C++ >Wie sende ich HTTP-Anfragen (GET, POST, PUT, DELETE) in Unity mit C#?

Wie sende ich HTTP-Anfragen (GET, POST, PUT, DELETE) in Unity mit C#?

DDD
DDDOriginal
2025-01-19 21:17:101049Durchsuche

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

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn