Unity3D — отправка GET и POST-запросов
Invite pending
Доброго времени суток уважаемые читатели! Не так давно столкнулся с такой ситуацией, когда нужно было создать проект, который будет работать не с простым сервером, как это принято для нормальных игровых проектов, а с веб-сервером (с сайтом) и отправлять на него данные посредством GET и POST-запросов, ну и принимать ответы и опираясь на них выполнять определённый алгоритм логики игрового процесса.
Прочитав достаточно много статей про Unity3D и методику WWW, я очень быстро нашёл информацию относительно к GET-запросам, но всё, что касается POST-запросов как токовой адекватной информации я так и не нашёл!
Спустя некоторое время, благодаря методу тыка, мне удалось найти решение о том как с Unity3D отправить GET и POST-запросы на WebServer с обработчиком входящей информации с помощью PHP или HTML и JavaScript.
В общем сам код:
Спасибо за внимание!
Прочитав достаточно много статей про Unity3D и методику WWW, я очень быстро нашёл информацию относительно к GET-запросам, но всё, что касается POST-запросов как токовой адекватной информации я так и не нашёл!
Спустя некоторое время, благодаря методу тыка, мне удалось найти решение о том как с Unity3D отправить GET и POST-запросы на WebServer с обработчиком входящей информации с помощью PHP или HTML и JavaScript.
В общем сам код:
public IEnumerator POST()
{
var Data = new WWWForm();
Data.AddField("variable1", "Текст 1"); // на сервере в PHP
Data.AddField("variable2", "Текст 2"); // регистр заголовков выглядит
Data.AddField("variable3", "Текст 3"); // примерно так :
Data.AddField("variable4", "Текст 4"); // $temp = REQUEST('variable1');
var Query = new WWW("http://www.example.com/game.php", Data);
yield return Query;
if (Query.error != null)
{
Debug.Log("Server does not respond : " + Query.error);
}
else
{
if (Query.text == "response") // в основном HTML код которым ответил сервер
{
Debug.Log("Server responded correctly");
}
else
{
Debug.Log("Server responded : " + Query.text);
}
}
Query.Dispose();
}
public IEnumerator GET()
{
string data1 = "Текст 1";
string data2 = "Текст 2";
WWW Query = new WWW("http://127.0.0.1/game.php?variable1=" + data1 + "&variable2=" + data2);
yield return Query;
if (Query.error != null)
{
Debug.Log("Server does not respond : " + Query.error);
}
else
{
if (Query.text == "response") // что нам должен ответить сервер на наши данные
{
Debug.Log("Server responded correctly");
}
else
{
Debug.Log("Server responded : " + Query.text);
}
}
Query.Dispose();
}
}
Спасибо за внимание!