„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie sende ich HTTP -Get-, Post-, Put- und Löschen von Anforderungen in Einheit mit C#?

Wie sende ich HTTP -Get-, Post-, Put- und Löschen von Anforderungen in Einheit mit C#?

Gepostet am 2025-02-17
Durchsuche:775

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

sende http in Einheit mit c#

]

Unity bietet anpassbare Netzwerkfunktionen, mit denen Entwickler Daten effizient über das Internet austauschen können. Dieser Leitfaden bietet einen umfassenden Überblick über das Senden von HTTP -Anfragen in Unity unter Verwendung von C# und UnityWebRequest (UNITY CURMENT NETWORK API), die Get- und Post -Operationen abdecken.

Get Request

]

Get Request wird verwendet, um Daten vom Server abzurufen. Verwenden Sie den folgenden Code, um eine Get -Anfrage mit UnityWebRequest zu senden:

IEnumerator GetRequest(string uri)
{
    UnityWebRequest uwr = UnityWebRequest.Get(uri);
    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: "   uwr.error);
    }
    else
    {
        Debug.Log("接收: "   uwr.downloadHandler.text);
    }
}

post request

]

Postanforderung wird verwendet, um Daten an den Server zu senden. Sie können Formulardaten und JSON -Daten senden.

posten Anfrage unter Verwendung von Formdaten

]
IEnumerator PostRequest(string url)
{
    WWWForm form = new WWWForm();
    form.AddField("myField", "myData");
    form.AddField("Game Name", "Mario Kart");

    UnityWebRequest uwr = UnityWebRequest.Post(url, form);
    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: "   uwr.error);
    }
    else
    {
        Debug.Log("接收: "   uwr.downloadHandler.text);
    }
}

posten Anfrage mit json data

]
IEnumerator PostRequest(string url, string json)
{
    var uwr = new UnityWebRequest(url, "POST");
    byte[] jsonToSend = new System.Text.UTF8Encoding().GetBytes(json);
    uwr.uploadHandler = (UploadHandler)new UploadHandlerRaw(jsonToSend);
    uwr.downloadHandler = (DownloadHandler)new DownloadHandlerBuffer();
    uwr.SetRequestHeader("Content-Type", "application/json");

    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: "   uwr.error);
    }
    else
    {
        Debug.Log("接收: "   uwr.downloadHandler.text);
    }
}

posten Anfrage mit MultiPart -Formulardaten/Multipart Form Dateien

]
IEnumerator PostRequest(string url)
{
    List formData = new List();
    formData.Add(new MultipartFormDataSection("field1=foo&field2=bar"));
    formData.Add(new MultipartFormFileSection("my file data", "myfile.txt"));

    UnityWebRequest uwr = UnityWebRequest.Post(url, formData);
    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: "   uwr.error);
    }
    else
    {
        Debug.Log("接收: "   uwr.downloadHandler.text);
    }
}

put Request

]
IEnumerator PutRequest(string url)
{
    byte[] dataToPut = System.Text.Encoding.UTF8.GetBytes("Hello, This is a test");
    UnityWebRequest uwr = UnityWebRequest.Put(url, dataToPut);
    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: "   uwr.error);
    }
    else
    {
        Debug.Log("接收: "   uwr.downloadHandler.text);
    }
}

Anfrage löschen

]
IEnumerator DeleteRequest(string url)
{
    UnityWebRequest uwr = UnityWebRequest.Delete(url);
    yield return uwr.SendWebRequest();

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: "   uwr.error);
    }
    else
    {
        Debug.Log("已删除");
    }
}
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3