Всем привет!
Я хотел бы написать плагин, который использует некоторое взаимодействие с веб-сервисом (что-то вроде XML-RPC). Таким образом, мне нужно выполнять GET и POST HTTP-запросы. Эти запросы должны проходить асинхронно (в неблокирующем режиме) для предотвращения подвисания сервера во время выполнения запроса.
Документация по SourceMod очень скудна и малополезна. Гугл тоже не рулит. Единственный способ получить нужную информацию о каком-то расширении -- это ковыряться в его исходниках на Си++.
Мой вопрос: какое API мне следует использовать? Я нашел несколько расширений на форуме forums.alliedmods.net: "socket", "sockets" and "Web downloader". Сокеты -- это низкоуровневое расширение, будет сложно реализовать логику HTTP протокола на SourcePawn. Web downloader (если я правильно понял) позволяет сохранять скачанные данные только в файл, а мне это не нужно -- мне нужно получать скачанные данные в строку. Плюс посылать данные (методом POST).
Исходный код расширения Web downloader имеет упоминание какого-то "WebGet_Extension". Что еще за WebGet расширение? Я не знаю. Также, дистрибутив SourceMod содержит файл расширения "webternet.ext.dll". Его описание выглядит как то, что мне надо, но я не нашел ни его API, ни примеров на SourcePawn. Создается ощущение будто где-то лежит очень большая документация на все это (не такая скудная как Вы должны зарегистрироваться, чтобы видеть ссылки.), но я не могу ее найти.
Я уже знаю PHP5 (ООП), Javascript, CSS, XML, JSON, SOAP и многое другое, но в скриптинге для SourceMod я новичок (всего где-то 3 дня). Я начал с изучения Pawn, написал "hello world" плагин и сейчас я застрял.
Пожалуйста помогите мне.
Я задал Вы должны зарегистрироваться, чтобы видеть ссылки., но там что-то как-то глухо. Уверен, здесь будет также, но так может хоть какая-то активность появится на этом форуме. Надо с чего-то начинать. Прикольно будет, если появится русскоязычное сообщество скриптеров сорсмода.