Получить ServiceDefinition.csdef из экземпляра Azure - PullRequest
2 голосов
/ 16 марта 2011

Мне нужно получить исходные конфигурации конечных точек из файла .csdef, как я могу это сделать?

Я не могу использовать RoleEnvironment.CurrentRoleInstance.InstanceEndpoints, потому что он дает мне внутренний / локальный порт в виртуальном IP.Но мне нужно знать, какой порт показывается публике.

Например, у меня есть FTP-сервер с конечной точкой tcp 21, но когда я проверяю в runrime к этой коллекции, он может иметь что-токак tcp 5100.Когда я связываю FTP-сервер с tcp 5100 и обращаюсь к серверу, например, через 127.0.0.1:21, он работает отлично.

Но, например, когда мне нужно установить режим PASV, я должен отправить обратно IP-адрес и порт, к которому должен подключиться клиент.Я разберусь с IP, но как узнать порт, настроенный для PASV?порт в предыдущей коллекции не гарантированно совпадает с портом в общедоступном интерфейсе.

Итак, как мне получить исходную конфигурацию .csdef?

Cheers.

1 Ответ

2 голосов
/ 18 января 2012

Я не уверен, работает ли это с FTP, но при использовании HTTP он вернет внутренний адрес и порт при использовании HttpContext.Requst.Url. Я использовал заголовок ["Host"] вместо этого. Надеюсь, это поможет.

...