"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como enviar http obter, postar, colocar e excluir solicitações em unidade usando c#?

Como enviar http obter, postar, colocar e excluir solicitações em unidade usando c#?

Postado em 2025-02-17
Navegar:429

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

Enviar solicitação http na unidade usando c#

]

O Unity fornece recursos de rede personalizáveis ​​que permitem aos desenvolvedores trocar dados com eficiência pela Internet. Este guia fornecerá uma visão geral abrangente de como enviar solicitações HTTP na Unidade usando C# e UnityWebRequest (API de rede atual da Unity), cobrindo as operações GET e POST.

Get Request

]

Get Solicy é usado para recuperar dados do servidor. Para enviar uma solicitação Get usando o UnityWebRequest, use o seguinte código:

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

]

A solicitação de postagem é usada para enviar dados para o servidor. Você pode enviar dados de formulário e dados JSON.

Post Solicy usando o Form Data

]
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);
    }
}

Post Solicy usando 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);
    }
}

Post Solicy usando arquivos de formulário de formulário multipart/multipart

]
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);
    }
}

Cut 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);
    }
}

delete request

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

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

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3