推送通知的空响应

时间:2014-07-26 18:54:29

标签: google-drive-api

我从谷歌驱动器推送通知API获取空响应帖子。我不确定我是否没有正确查看发布的数据到我的听力应用程序,或者我是否错误地设置了我的频道。

我能够设置通过以下答案验证的频道:

[14-07-26 14:27:19:697 EDT] {
 "kind": "api#channel",
 "id": "ce976221-7f6c-44bd-82f3-6a7a539fbc18",
 "resourceId": "YTWyD_gD_mUUBM8Ttrqc6P6ZCxI",
 "resourceUri": "https://www.googleapis.com/drive/v2/files/1T0GX4lBx6yH2DHMAS624qk5bQylZm1kRs_rE8tIHS_c?updateViewedDate=false&alt=json",
 "token": "caller=https://script.google.com/a/macros/ccsknights.org/s/AKfycbxc0JwGl-TptxgsHhWPaAZbIgQXRk7fhB282ReOa09f_6HmGPkw/exec",
 "expiration": "1406402836000"
}

我的监听应用确实收到通知,因为我弄乱了测试文档。我对所有发布的数据进行了转储,但它显示为:

{queryString = null,parameter = {},contextPath =,parameters = {},contentLength = 0}

我已将其他数据发布到应用中进行测试,并按预期显示:

{queryString = bob / asdasd / asdasdsd / adsad,postData = FileUpload,parameter = {test = yes,test2 = no,bob / asdasd / asdasdsd / adsad =},contextPath =,parameters = {test = [Ljava。 lang.Object; @ 2fc540bd,test2 = [Ljava.lang.Object; @ 3f1d50cb,bob / asdasd / asdasdsd / adsad = [Ljava.lang.Object; @ 1da35fcc},contentLength = 17}

听力应用程序很简单:

var sslog = SpreadsheetApp.openById('1dOic6cWtTuj7lxi-QoRK2hrlXArd2C5ZlqOEmCvJ6R0').getSheets()[0];

function doPost(e) {
 sslog.appendRow([e]);
  return 200;
  //return ContentService.createTextOutput().setContent(JSON.stringify(e)).setMimeType(ContentService.Mi    meType.JSON);
}

我是否缺少能够从帖子中提取推送通知数据的内容?

2 个答案:

答案 0 :(得分:1)

正确的答案是在postData对象中检索帖子正文。它已添加但未记录。您可以在https://developers.google.com/apps-script/releases/2013

找到有关它的更多信息
function doPost(e) {
Logger.log(e.postData.getDataAsString());
}

答案 1 :(得分:0)

如果您正在观看文件资源,则POST正文始终为空。您可以使用的所有信息都包含在“X-Goog- *”标题中。