我在Windows PC上尝试GAE Python应用程序。使用以下代码时,我遇到了No crypto library available
错误:
from oauth2client.client import SignedJwtAssertionCredentials
json_key=json.load(open('DriveCredentials.json'))
scope = ['https://spreadsheets.google.com/feeds']
credentials = SignedJwtAssertionCredentials(json_key['client_email'], json_key['private_key'].encode(), scope)
根据this,我需要安装PyOpenSSL。我这样做但仍然得到同样的错误。从这个Google Groups conversation开始,假设它在Windows环境中不起作用,因为crypt
模块在Windows中不可用。这是对的吗?
我将项目部署到GAE,尽管无法在我的本地PC上运行,但它在Google的服务器上运行良好。
SignedJwtAssertionCredentials
无法在Windows PC上进行开发,这是一个众所周知的问题吗?有解决方法吗?
我之前在另一个应用程序的Windows上的Python 3.4环境中使用了相同的代码,并且工作正常。
答案 0 :(得分:1)
您需要下载并安装适用于Windows的Voidspace PyCrypto二进制文件:
http://www.voidspace.org.uk/python/modules.shtml#pycrypto
某些国家/地区限制导出PyCrypto等加密算法。为了安全起见,PyCrypto不直接提供这些。因此,您必须从这些第三方网站下载并安装它,而不是使用pip
等标准工具。