从Azure实例获取ServiceDefinition.csdef

时间:2011-03-16 17:30:47

标签: sockets azure azure-worker-roles azure-configuration

我需要从.csdef文件中获取原始端点配置,我该怎么办?

我无法使用RoleEnvironment.CurrentRoleInstance.InstanceEndpoints,因为它为我提供了虚拟IP中的内部/本地端口。但我需要知道哪个端口正在向公众展示。

例如,我有一个带有tcp 21端点的FTP服务器,但是当我在runrime上检查该集合时,它可能有类似tcp 5100的内容。当我将FTP服务器绑定到tcp 5100并通过例如127.0.0.1:21访问服务器时,它可以正常工作。

但是,例如,当我需要建立PASV模式时,我必须发回客户端应该连接的IP和端口。我会计算出IP,但我怎么知道为PASV配置的端口?不确保上一个集合中的端口与公共接口中显示的端口相同。

基本上,我怎样才能获得原始的.csdef配置?

干杯。

1 个答案:

答案 0 :(得分:2)

我不确定这是否适用于FTP,但是当使用HTTP时,如果使用HttpContext.Requst.Url,它将返回内部地址和端口。我正在使用Header [“Host”]。希望这会有所帮助。