Web2py在应用程序内部的服务器端口号

时间:2015-09-05 07:59:15

标签: web2py web2py-modules

如何从web2py应用程序(例如控制器或模块)中获取服务器上的端口号(部署了web2py应用程序)?

我正在使用urllib通过执行此操作与控制器内的其他操作进行交互

response = urllib2.urlopen('http://127.0.0.1:8000%s?%s'%(URL('unregister_relationship.json'),urllib.urlencode(data))) 
response = json.loads(response.read())

但是这需要预先知道端口号,我希望它是动态的。

1 个答案:

答案 0 :(得分:0)

URL()帮助程序使用schemehost参数生成绝对URL。此外,无需使用urllib.urlencode生成查询字符串,因为您可以将字典作为vars参数传递:

urllib2.urlopen(URL('unregister_relationship.json', vars=data, scheme='http', host=True))

作为替代方案,您也可以考虑使用JSON-RPC来允许两个应用进行通信。