Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menghantar HTTP GET, POST, PUT, dan DELETE Permintaan dalam Unity menggunakan C#?

Bagaimana untuk Menghantar HTTP GET, POST, PUT, dan DELETE Permintaan dalam Unity menggunakan C#?

Patricia Arquette
Lepaskan: 2025-01-19 21:21:12
asal
880 orang telah melayarinya

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

Menghantar permintaan HTTP dalam Unity menggunakan C#

Perpaduan menyediakan keupayaan rangkaian yang boleh disesuaikan yang membolehkan pembangun bertukar-tukar data dengan cekap melalui Internet. Panduan ini akan memberikan gambaran menyeluruh tentang cara menghantar permintaan HTTP dalam Unity menggunakan C# dan UnityWebRequest (API rangkaian semasa Unity), meliputi operasi GET dan POST.

DAPATKAN permintaan

Permintaan GET digunakan untuk mendapatkan semula data daripada pelayan. Untuk menghantar permintaan GET menggunakan UnityWebRequest, gunakan kod berikut:

<code class="language-csharp">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);
    }
}</code>
Salin selepas log masuk

PERMINTAAN POS

Permintaan POST digunakan untuk menghantar data ke pelayan. Anda boleh menghantar data borang dan data JSON.

POS permintaan menggunakan data borang

<code class="language-csharp">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);
    }
}</code>
Salin selepas log masuk

POSKAN permintaan menggunakan data JSON

<code class="language-csharp">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);
    }
}</code>
Salin selepas log masuk

PERMINTAAN POS menggunakan data borang berbilang bahagian/fail borang berbilang bahagian

<code class="language-csharp">IEnumerator PostRequest(string url)
{
    List<IMultipartFormSection> formData = new List<IMultipartFormSection>();
    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);
    }
}</code>
Salin selepas log masuk

LETAKKAN permintaan

<code class="language-csharp">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);
    }
}</code>
Salin selepas log masuk

PADAM permintaan

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

    if (uwr.isNetworkError)
    {
        Debug.Log("发送错误: " + uwr.error);
    }
    else
    {
        Debug.Log("已删除");
    }
}</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menghantar HTTP GET, POST, PUT, dan DELETE Permintaan dalam Unity menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan