【问题标题】:Compulsory to use JSON form of request in Google GCM?强制在 Google GCM 中使用 JSON 形式的请求?
【发布时间】:2012-08-09 15:57:05
【问题描述】:

我正在使用 Java 从 google C2DM 迁移到 GCM。 我读了这篇文章GCM Push Notification without using JSON。即使在谷歌文档上,我也发现允许使用纯文本或 UTF-8 内容类型。我正在为浏览器应用程序使用 API 密钥,并且还尝试了 curl 命令。每次我收到与授权相关的响应代码 401。以下是我正在形成的 URL:

Collapse_key=0&Auth_Token=

> my api key for browser apps

&data.payload=

> meesage to be send

&registration_id=

> id of registered device

请问401响应码的原因及解决方法?

【问题讨论】:

    标签: java google-cloud-messaging


    【解决方案1】:

    API 密钥无效时出现 HTTP 状态代码 401。详情请查看here

    您应该以 json 格式发送数据。格式如下所示。详细解释here

    {
      "registration_ids" : ["APA91bHun4MxP5egoKMwt2KZFBaFUH-1RYqx..."],
      "data" : {
        ...
      },
    }
    

    【讨论】:

    • 我再次尝试使用 curl 并返回 json 数据。它成功了:1 但仍然从我的 J2EE 应用程序中得到响应代码 401。可能是什么原因?
    • 我的请求格式是https://andoid.googleapis.com/gcm/send?collapse_key=0&Auth_Token="api key"&data.payload="message to be send"&registration_id="id of registered device",并且在标题中包含内容类型,内容长度和授权:密钥在那里。
    • collapse_key 应该是字符串类型。
    • 请求方法应该是什么 - GET 或 POST ?我用过 POST。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-07
    • 1970-01-01
    • 1970-01-01
    • 2013-08-29
    • 2018-04-30
    • 1970-01-01
    相关资源
    最近更新 更多