Мне нужно загрузить JSON с сервера и десериализовать его в своем коде, чтобы использовать его.
Я знаю, что мне нужен UnityWebRequest и сопрограмма.Я понимаю два пути.Я могу StartCoroutine, отправить серверу запрос и обработать полученные данные в этом вызываемом Coroutine, или я могу StartCoroutine, отправить запрос и сохранить результат в закрытой переменной класса.В то время, после StartCoroutine я могу делать while (переменная == null), и после этого обрабатывать данные в методе вызывающего абонента
private void Start()
{
StartCoroutine(LoadPagesId("SomeURL.com"));
}
private IEnumerator LoadPagesId(string url)
{
var request = UnityWebRequest.Get(url);
yield return request.SendWebRequest();
var data = request.downloadHandler.text;
request.Dispose();
// Do something with data
}
ИЛИ
private string _str;
private void Start()
{
StartCoroutine(LoadPagesId("SomeURL.com"));
while (_str == null)
{
}
// Do something with data
}
private IEnumerator LoadPagesId(string url)
{
var request = UnityWebRequest.Get(url);
yield return request.SendWebRequest();
_str = request.downloadHandler.text;
request.Dispose();
}
Есть ли какой-то другой способ,без глобальных переменных и расширенных методов LOAD?