Dol*_*cci 8 python java curl urllib2 restlet
我正在尝试从python连接到本地运行的Restlet服务器,但连接无限挂起(或者如果我设置超时则超时).
import urllib2
handle = urllib2.urlopen("http://localhost:8182/contact/123") # hangs
Run Code Online (Sandbox Code Playgroud)
如果我使用curl
shell打开上面的URL,结果会很快返回.如果我使用urllib2打开一个不同的本地服务(例如,端口8000上的Django Web服务器),urllib2工作正常.
我试过禁用防火墙(我在OS X上这样做).我已经尝试将localhost更改为127.0.0.1.除了用户代理之外,来自Restlet的curl和urllib2连接的日志显示相同.
我的解决方法是只调用curl
via subprocess
,但我宁愿理解为什么会失败.
这是我的Restlet资源的外观:
public class ContactResource extends ServerResource {
@Get
public String represent() throws Exception {
return "<contact details>";
}
//....
}
Run Code Online (Sandbox Code Playgroud)
如果您需要更多信息/代码,请告诉我们
urllib2中有ProxyHandler(http://docs.python.org/library/urllib2.html#urllib2.ProxyHandler)
尝试在 urlopen 之前将空字典传递给它
urllib2.ProxyHandler([])
handle = urllib2.urlopen("http://localhost:8182/contact/123")
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1660 次 |
最近记录: |