来自 mandrill 的 ValidationError 与谷歌应用引擎的 urlfetch

Posted

技术标签:

【中文标题】来自 mandrill 的 ValidationError 与谷歌应用引擎的 urlfetch【英文标题】:ValidationError from mandrill with google app engine's urlfetch 【发布时间】:2013-04-22 00:28:40 【问题描述】:

来自本地主机的带有 python 27 的 Google 应用引擎应用程序试图通过 mandrill 的服务发送邮件。

我收到一个:

"status":"error","code":-1,"name":"ValidationError","message":"You must specify a key value"

来自谷歌应用引擎中的这段代码:

my_payload = 

 "key": mandrill_key,
 "message": 
      "html": "<p>Example HTML content</p>",
      "subject": "prueba redquintal",
      "from_email": "MY_EMAIL@XXX.com",
      "to": [
        
        "email": "SOME_EMAIL@gmail.com",
        
        ]
    


try:
    content = urlfetch.fetch(mandrill_url, method=urlfetch.POST, headers='Content-Type': 'application/json', payload=my_payload)
    if content.status_code == 200:

        # some_code

    else:

        # some_code


except urlfetch.DownloadError:

    # some_code

知道可能是什么问题吗?

【问题讨论】:

【参考方案1】:

我认为payload应该是一个字符串

比如

import json
content = urlfetch.fetch(mandrill_url, method=urlfetch.POST, headers='Content-Type': 'application/json', payload=json.dumps(my_payload))

【讨论】:

以上是关于来自 mandrill 的 ValidationError 与谷歌应用引擎的 urlfetch的主要内容,如果未能解决你的问题,请参考以下文章

如何打印ValidationError?

AWS放大反应 - 无法启动项目

AuthError - 错误:未正确配置 Amplify / AWS cognito,React JS

检查网络响应是来自服务器还是来自 Chrome 缓存

为啥 WCF 服务能够处理来自不同进程的调用而不是来自线程的调用

来自 viewDidAppear 的 Segue 调用有效,但不是来自 viewWillAppear