Я собираюсь портировать веб-приложение JavaScript на C # Unity3D (бесплатная / личная версия) для RPG, которую я разрабатываю. У меня есть расширяемый отдельный API, встроенный в PHP Laravel 5.1, с которым моя игра взаимодействует через jQuery http-звонки.
Мне нужно продолжать делать стандартные успокоительные звонки, get
, post
, put
, delete
и т. Д. В Unity, но только обнаружил UnityEngine.WWW#
который создает posts
и posts
.
Эта SO-почта разделяет другие доступные http-методы Unity3D, но ни один из них фактически не получает все успокоительные вызовы в одном. Я снова спрашиваю, потому что это было опубликовано в 2012 году, и я не нашел никаких обновлений, которые удовлетворяют этому в обновленной документации .
Существует лучший HTTP Basic и Best HTTP за 45 долларов и 55 долларов США, но думал, что будут другие бесплатные варианты.
Я что-то упустил в Unity, что позволяет делать стандартные успокоительные звонки?
WebClient
и WebRequest
доступны в Unity и, похоже, будут работать только с версией Pro Unity, как и любой другой API из пространства имен System.Net
. Я не знаю, изменилось ли это ограничение в Unity 5. Они поддерживают все эти успокоительные звонки, упомянутые в вашем вопросе.
Unity Добавил новый API под названием UnityWebRequest в версии 5.2 с поддержкой мобильной платформы в 5.3 . Он был разработан для замены WWW
и поддерживает все остальные вызовы, перечисленные в вашем вопросе. Ниже приведены примеры для каждого из них. Это не полный пример. Вы можете найти полные примеры в приведенной выше ссылке.
//Get UnityWebRequest get = UnityWebRequest.Get("http://www.myserver.com/foo.txt"); //Post UnityWebRequest post = UnityWebRequest.Post("http://www.myserver.com/foo.txt","Hello"); //Put byte[] myData = System.Text.Encoding.UTF8.GetBytes("This is some test data"); UnityWebRequest put = UnityWebRequest.Put("http://www.my-server.com/upload", myData); //Delete UnityWebRequest delete = UnityWebRequest.Delete("http://www.myserver.com/foo.txt");
Вы можете увидеть полный пример для каждого, включая публикацию с json здесь .