Silverlight 4 в реальном мире - общение с сервером - PullRequest
0 голосов
/ 10 декабря 2010

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

В настоящее время мы выполняем все взаимодействия по HTTP, запрашивая данные с сервера, а затем обрабатываем на клиенте - работает хорошо, пока у нас не будет большого количества запросов или больших объемов данных.

Сокеты в Silverlight работают только с номерами портов между 4502 и 4534, есть ли способ сделать это в Интернете? Способ позволить пользователю просто принять и открыть порт?

Что на самом деле блокирует диапазон портов?

========

Просто добавлю, возможно ли это что-то в Java (http://homepages.uel.ac.uk/2795l/pages/socketap.htm)

Ответы [ 2 ]

1 голос
/ 10 декабря 2010

Единственный способ добиться этого - через прокси на сервере или переадресацию портов на сервере.

Это не может происходить на стороне клиента само по себе.

Что фактически блокирует диапазон портов, так это время выполнения SL. Это делается из соображений безопасности.

В действительности использование сокетов в интернет-приложении может создать некоторые препятствия, особенно в том, что брандмауэр должен позволять портам 4502-4534 открываться для связи Silverlight. Это одна из причин того, что использование сокетов чаще используется в приложениях интрасети, где нет необходимости открывать порты (по большей части). Поскольку Silverlight определил эти порты как средства связи для их среды выполнения, он по крайней мере дает администраторам некоторый контроль над этим диапазоном; в отличие от разрешения времени выполнения работать на любом заданном количестве портов.

0 голосов
/ 10 декабря 2010
...