随着最近发布的 App Engine 1.7.7,终于可以使用 TCP 或 UDP 套接字建立出站连接。这开启了一个充满新可能性的世界。
在 Python 2.5 中使用import socket
,我已经能够成功测试一些简单的低级命令(例如 socket.getaddrinfo("smtp.gmail.com", 587)...)
我现在尝试在端口 587 上启动经过身份验证的 SMTP 连接:
import smtplib
session = smtplib.SMTP('smtp.gmail.com', 587)
...但我立即在 _remote_socket.py 中遇到了NotImplementedError
来自gethostbyaddr函数的一个。这是令人惊讶的,因为在https://developers.google.com/appengine/docs/python/sockets/overview的 Google App Engine Sockets API 概述中没有提到这个函数的非实现
知道这里发生了什么,以及如何绕过这个限制?
注意:我还没有迁移到 Python 2.7。我仍在使用 Python 2.5 和 old_dev_appserver.py 作为开发服务器。
谢谢你。