如何为sublime2 设置代理

最近接触了sublime2,按照网上的方法设置代理的时候一直不成功, 后来仔细研究下设置成功,现分享下经验

网上的方法基本都是通过配置文件来设置http_proxy, 然后执行install package 的语句来安装package control, 使用这种方法安装的时候总是会报出以下错误

Package Control: Error submitting usage information. Error checking for server certificate revocation (errno 12057) during HTTP write phase of downloading https://sublime.wbond.net/submit?package_control_version=2.0.0&sublime_platform=windows&package=Package+Control&sublime_version=2221&version=2.0.0&operation=install.

后来仔细看了下代码,原来是在执行安装语句的时候没有真正使用到设置的代理, 注意看下面的第6行,貌似设置了http proxy, 但是看下参数是空的,so, 根本没有设置proxy,所以改法已经很明显了

import urllib2,os,hashlib
h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'
pf = 'Package Control.sublime-package'
ipp = sublime.installed_packages_path()
os.makedirs( ipp ) if not os.path.exists(ipp) else None
urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) )
urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler({"http":"http://your.proxy:port"})) )   #正确做法
by = urllib2.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read() dh = hashlib.sha256(by).hexdigest() open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')

  


posted @ 2014-03-27 11:35  KANYU  阅读(1367)  评论(0编辑  收藏  举报