1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/andot-hprose-aauto

Клонировать/Скачать
README_zh_CN.md 4.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 08.06.2025 12:52 b6b6644

Hprose для AAuto Quicker



Введение

Hprose — это аббревиатура от "High Performance Remote Object Service Engine" (высокопроизводительный сервисный движок для удаленных объектов).

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

Hprose поддерживает множество языков программирования, таких как:

  • AAuto Quicker
  • ActionScript
  • ASP
  • C++
  • Dart
  • Delphi/Free Pascal
  • dotNET (C#, Visual Basic...)
  • Golang
  • Java
  • JavaScript
  • Node.js
  • Objective-C
  • Perl
  • PHP
  • Python
  • Ruby
  • ...

С помощью Hprose вы можете легко и эффективно взаимодействовать между этими языками.

Этот проект представляет собой реализацию Hprose для языка AAuto Quicker.

Использование

Синхронный вызов

Синхронный вызов клиента Hprose для AAuto Quicker очень прост:

import hprose;

io.open();

var client = hprose.client.create("http://hprose.com/example/");
io.print(client.hello("world"));

execute("pause")
io.close();
```### Обработка синхронных исключений

Если на сервере произойдет ошибка или функция или метод на сервере выбросит исключение, оно будет отправлено на клиент и выброшено там. Вы можете использовать конструкцию `try` для перехвата исключения.

### Асинхронный вызов

При разработке приложений на WinForms лучше использовать асинхронный вызов, чтобы избежать зависания интерфейса во время коммуникации:

```lua
import win.ui;
import hprose;

/*DSG{{*/
var winform = ..win.form(text="AAuto Form";right=599;bottom=399)
winform.add(
button={cls="button";text="button";left=50;top=194;right=129;bottom=223;z=1};
edit={cls="edit";left=45;top=39;right=269;bottom=177;edge=1;multiline=1;z=2}
)
/*}}*/

winform.button.oncommand = function(id,event){
    var client = hprose.client.create("http://hprose.com/example/");
    client.hello("async world", function(result) {
        winform.edit.text = 'result: \r\n' ++ result;
    }, function(name, err) {
        winform.edit.text = 'error: \r\n' ++ err;
    });
}
```winform.Show()
win.loopMessage();

Асинхронная обработка исключений

При использовании асинхронного вызова вам необходимо передать функцию обратного вызова для успешного выполнения, а затем функцию обратного вызова для ошибок, чтобы получить исключения с серверной стороны (как в примере выше). Если вы пропустите функцию обратного вызова для ошибок, клиентское приложение будет игнорировать исключения, как будто их никогда и не было.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/andot-hprose-aauto.git
git@api.gitlife.ru:oschina-mirror/andot-hprose-aauto.git
oschina-mirror
andot-hprose-aauto
andot-hprose-aauto
master