Связь LSL

Я получил очень умное обходное решение André , работающее в Objective-C с использованием SDK Firebase iOS:

NSString *plistPath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info" ofType:@"plist"];
FIROptions *secondaryAppOptions = [[FIROptions alloc] initWithContentsOfFile:plistPath];
[FIRApp configureWithName:@"Secondary" options:secondaryAppOptions];
FIRApp *secondaryApp = [FIRApp appNamed:@"Secondary"];
FIRAuth *secondaryAppAuth = [FIRAuth authWithApp:secondaryApp];

[secondaryAppAuth createUserWithEmail:user.email
                             password:user.password
                           completion:^(FIRUser * _Nullable user, NSError * _Nullable error) {
                                [secondaryAppAuth signOut:nil];
                          }];

5
задан Ry- 21 July 2012 в 02:08
поделиться

4 ответа

Опции внешней связи LSL ограничены тремя определенными опциями. Официальный LSL Wiki обеспечивает более подробную информацию о каждой опции.

  • Необработанный HTTP: запросы должны инициироваться сценарием LSL
  • XmlHTTP: запросы должны инициироваться внешним сервисом
  • Электронная почта: полная двухсторонняя связь, но с вынужденными таймерами автоматического отключения.
4
ответ дан 18 December 2019 в 14:54
поделиться

Я бы хотел согласиться с Ильей.

Лучшее, что вы можете получить, если хотите, чтобы скрипт был очень отзывчивым, - это обратный вызов кода со стороны сервера, как только сервер узнает об этом с помощью XML-RPC.

Основная вики для Second Life довольно хороша для примера кода и т. д. XML-RPC

2
ответ дан 18 December 2019 в 14:54
поделиться

REST теперь в моде для веб-сервисов. Нет никакой настоящей причины для перехода к уровню TCP/IP для чего-то, что из описания не требует супер производительности или время отклика. Поддержка HTTP LSL довольно хороша, таким образом, у Вас не должно быть проблем.

Конечно, это не идеально для возвращения вывода программ в режиме реального времени - для которого необходимо было бы открыть http соединение на сервере и постоянно писать в тело страницы (в то время как клиент считает это). Но даже с движением назад и вперед между сервером и клиентом необходимо получить умеренно хороший опыт.

5
ответ дан 18 December 2019 в 14:54
поделиться

Функция llHTTPRequest LSL и соответствующее событие http_response определенно являются вашим лучшим выбором.

Вопреки предположению, сформулированному в вашем вопросе, использование http не требует использования «форм html». Полезная нагрузка POST (или PUT) может содержать данные, организованные в любом порядке. Интерфейс REST - это хороший способ осуществить межмашинную связь по протоколу http, о которой мы говорим. Одним из преимуществ REST перед html или xml является то, что REST может быть менее подробным. Это важно, когда вы приближаетесь к пределу LSL в 2048 символов для HTTP-ответов.

Хотя LSL имеет два других метода связи с остальной частью Интернета (электронная почта и xml-rpc), их использование в сценариях LSL очень высоко в наши дни разочарованы. Обе эти системы (как в настоящее время реализовано в Second Life) полагаются на централизованные серверы для маршрутизации сообщений по назначению. Это плохо масштабируется. Эти серверы подвергаются все возрастающей нагрузке по мере роста Second Life. llHTTPRequest, с другой стороны, полностью запускается на симуляторе, на котором запущен ваш скрипт, что означает, что вам не нужно беспокоиться о пропущенных сообщениях из-за перегруженных центральных серверов.

Наконец, скоро в LSL будет добавлена ​​новая функция, позволяющая любой скрипт действовать как http-сервер (см. http://wiki.secondlife.com/wiki/LSL_http_server ). В настоящее время (по состоянию на июнь 2009 г.) он развернут в бета-версии, но должен появиться в основной сетке со следующим крупным обновлением. С этим дополнением

2
ответ дан 18 December 2019 в 14:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: