【发布时间】:2015-04-11 04:42:39
【问题描述】:
我在 GAE 上使用 Go。我的任务之一是发送电子邮件。我正在成功使用this 文档进行测试。
但是,如果我不想要请求处理程序怎么办:
func confirm(w http.ResponseWriter, r *http.Request) {
c := appengine.NewContext(r)
...
而是通过本地函数发送电子邮件:
func confirm() {
...
在 Go 中有什么方法可以用 GAE 做到这一点吗?我认为我正在寻找的是一种调用方式:
c := appengine.NewContext(r)
但是没有请求处理程序,或者以任何可能的方式绕过它(我可能无法阅读)
我在想一个变通办法是在我的应用程序和我的应用程序之间创建一个http request - 但哇,真丑!
resp, err := http.Get("http://localhost:8080/sendMail?to=...")
注意:在尝试了这个之后——我得到了丑陋的解决方法: http.DefaultTransport 和 http.DefaultClient 在 App Engine 中不可用。见https://cloud.google.com/appengine/docs/go/urlfetch/
因此,这种解决方法实际上不是 urlfetch 中的解决方法,这是 GAE 再次使用 http.GET 的方式...需要 c := appengine.NewContext(r)
【问题讨论】:
标签: google-app-engine go