【问题标题】:Posting a message to Groupme API with Django使用 Django 向 Groupme API 发布消息
【发布时间】:2015-09-22 09:19:20
【问题描述】:

我正在尝试在 Django 视图中使用 Groupme's API 发布消息。为了帮助 HTTP 发布,我使用 requests python package. 我还使用 json python 模块来格式化 json 数据。

import requests, json

data = json.dumps({"message":{"source_guid":"random_string", "text": "message_to_send"}})
send = requests.post("https://api.groupme.com/v3/groups/:group_id/message?token=my_access_token", data=data)

send.json()

当然 :groupe_id 和 my_access_token 是我代码中的实际数字。但是,这总是返回:

{u'meta': {u'code': 400, u'errors': [u'text is required']}}

而不是状态 201。 谁能告诉我为什么它无法识别 json 数据中的“文本”条目?谢谢。

【问题讨论】:

    标签: python django python-2.7 django-views python-requests


    【解决方案1】:

    你应该发帖到:

    https://api.groupme.com/v3/groups/:group_id/messages
    

    具有如下负载:

    {
       "message": {
         "source_guid": "c8bf78dd-c17c-4d1d-9029-1689764436a1",
         "text": "So text....."
       }
    }
    

    将您的访问令牌放入 http 标头 X-Access-Token 并确保您的 Content-Type 标头为 application/json

    【讨论】:

      【解决方案2】:

      只需在 POST 请求的输入参数中使用 'json' 而不是 'data'。

      data = {"message":{"source_guid":"random_string","text":"message_to_send"}}
      send = requests.post("https://api.groupme.com/v3/groups/:group_id/message?token=my_access_token", json=data)
      print send.text
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-01
        • 1970-01-01
        • 2013-01-02
        • 1970-01-01
        相关资源
        最近更新 更多