#c# #mysql #unity3d #server
#c# #mysql #unity3d #сервер
Вопрос:
Я разрабатываю игру для Android с использованием Unity. У меня есть pi-сервер (настроен статический ip, переадресация портов, apache 2, php, mysql и phpmyadmin), и я хочу использовать его для сохранения результатов из моего приложения в нем, а также для получения лучших результатов для таблицы лидеров. Какой код я должен использовать, чтобы облегчить тот тип связи, который я хочу? Чтобы быть более точным, как мне отправить sql-код на сервер и прочитать данные?
Я впервые пытаюсь сделать что-то подобное, поэтому извините, если это что-то очевидное. Другая информация: порт 80 настроен для пересылки, база данных называется «game_scores», таблица называется «рекорд», а таблица состоит из 4 столбцов: id, имя пользователя, оценка и дата.
Ответ №1:
Хотя возможно, чтобы ваше приложение напрямую взаимодействовало с базой данных MySQL на вашем сервере (через порт 3306, а не порт 80), стандартным способом облегчения такого соединения является вместо этого реализация веб-службы (REST API), которая выполняется на вашем сервере и прослушивает HTTP-запросы от вашего Unityприложение и подключается к базе данных, чтобы отвечать вашему приложению необходимыми данными. Связь с вашим сервером через HTTP (или аналогичные протоколы) создает уровень абстракции, который позволяет вам изменять или заменять реализацию вашего сервера или базы данных в будущем без изменения клиента. Вот приличный учебник, в котором описывается, как создать простой REST API с PHP и MySQL. Как только вы создадите REST API на своем сервере, вы сможете отправлять ему запросы из Unity с помощью UnityWebRequest.