Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Загрузка необработанных данных на HTTP-сервер (PUT)

Важно: UNet — это устаревшее решение, а также новая многопользовательская и сетьсистема Unity, которая обеспечивает многопользовательскую игру. игры через компьютерную сеть. Подробнее
См. в Словарь
Решение (Netcode для GameObjects) находится в разработке. Дополнительную информацию и дальнейшие действия см. на веб-сайте Unity Netcode for GameObjects.

Некоторые современные веб-приложения предпочитают загружать файлы с помощью HTTP-команды PUT. Для этого сценария Unity предоставляет функцию UnityWebRequest.PUT.

Эта функция принимает два аргумента. Первый аргумент представляет собой строку и указывает целевой URL-адрес для запроса. Второй аргумент может быть либо строкой, либо массивом байтов и указывает данные полезной нагрузки, отправляемые на сервер.

Сигнатуры функций:

WebRequest.Put(string url, string data); WebRequest.Put(string url, byte[] data);

Подробнее

  • Эта функция создает UnityWebRequest и задает тип содержимого application/octet-stream.
  • Эта функция прикрепляет стандартный DownloadHandlerBuffer к UnityWebRequest. Как и в случае с функциями POST, вы можете использовать это для возврата данных результатов из ваших приложений.
  • Эта функция сохраняет входные данные загрузки в стандартный объект UploadHandlerRaw и прикрепляет их к UnityWebRequest. В результате при использовании функции byte[] изменения, внесенные в массив байтов, выполненные после вызова UnityWebRequest.PUT, не отражается в данных, загруженных на сервер.

Пример

using UnityEngine; using UnityEngine.Networking; using System.Collections; public class MyBehavior : MonoBehaviour { void Start() { StartCoroutine(Upload()); } IEnumerator Upload() { byte[] myData = System.Text.Encoding.UTF8.GetBytes("This is some test data"); UnityWebRequest www = UnityWebRequest.Put("https://www.my-server.com/upload", myData); yield return www.SendWebRequest(); if (www.result != UnityWebRequest.Result.Success) { Debug.Log(www.error); } else { Debug.Log("Upload complete!"); } } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
Руководство Unity 2021.3