无法从doPost(e)中读取嵌套属性

瓦加尔·艾哈迈德(Waqar Ahmad)

我正在尝试使用Apps脚本中的Contentservice创建一个WebdoPost(e)服务,能够与Google Apps AdminDirectory服务进行交互

这是我的代码概述。我将此保存为服务器并将其发布为websapp

function doPost(e) {
  var data = e.parameter;  
  var resourceType = data.resourceType;
  var method = data.method;
  var resource = data.resource;

  var resourceParams = resource.parameters;

//other code to work with AdminDIrectory
// return ContentService.createTextOutput(myoutputdata).setMimeType(ContentService.MimeType.JSON);
}

在我使用Apps脚本编写的用于测试Web服务的客户端代码中

function test() {
  var jsonData = {
    authKey : 'HwZMVe3ZCGuPOhTSmdcfOqsl12345678',
    resourceType : 'user',
    method : 'get',
    resource : {
      parameters : {
        userKey : '[email protected]'
      }
    }
  }

  var url = 'https://script.google.com/macros/s/xyzabc12345678_wE3CQV06APje6497dyI7Hh-mQMUFM0pYDrk/exec';

  var params = {
    method : 'POST',
    payload : jsonData
  }

  var resp = UrlFetchApp.fetch(url, params).getContentText();

  Logger.log(resp);
}

现在,当我尝试e.parameter.resource.parameters在服务器端阅读时,它给出了错误并显示e.parameter.resource是字符串类型。如何在服务器端读取嵌套对象?看来,它只能识别一级参数。

姆霍克西

使用

function doPost(e) {
  return ContentService.createTextOutput(JSON.stringify(e.parameter)).setMimeType(ContentService.MimeType.JSON); 

您得到回应
"{"authKey":"HwZMVe3ZCGuPOhTSmdcfOqsl12345678","resource":"{parameters={[email protected]}}","method":"get","resourceType":"user"}"

所以看起来它正在将所有嵌套扁平化为一个字符串。类似问题注释中,请注意,UrlFetchApp文档允许有效负载为“它可以是字符串,字节数组或JavaScript键/值映射”,但是我认为这不会扩展到嵌套键/值映射。

如另一个答案中所述,解决方案将是对有效载荷进行字符串化,例如

var params = {
      method : 'POST',
      payload : {'data':JSON.stringify(jsonData)}
    };

我在以字符串形式处理有效载荷时遇到了问题,这就是为什么我使用键值的原因

在服务器端脚本中,您可以使用

function doPost(e) {
  var data = JSON.parse(e.parameter.data);
  var userKey = data.resource.parameters.userKey;
  ...
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

嵌套网格中的ExtJS错误:无法读取null的属性'isGroupHeader'

来自分类Dev

无法读取嵌套函数中的“ get” $ http属性

来自分类Dev

无法读取Angular 2中的嵌套调用中未定义的属性“ subscribe”

来自分类Dev

无法读取setInterval中的属性

来自分类Dev

无法读取 foreach 中的属性?

来自分类Dev

无法读取 express 中的属性

来自分类Dev

指令无法从“属性”中读取属性

来自分类Dev

E2E测试中的“ TypeError:无法读取未定义的属性'close'”

来自分类Dev

从文件中读取所有属性(也包括嵌套属性!)

来自分类Dev

读取在 React 中作为属性传递的嵌套对象的属性

来自分类Dev

角嵌套承诺'无法读取未定义的属性'then'

来自分类Dev

AngularJS-$ httpBackend无法读取嵌套的JSON属性

来自分类Dev

Ruby on Rails中的嵌套属性无法保存

来自分类Dev

如何从MongoDB Java中的多个嵌套文档中读取属性?

来自分类Dev

如何从java中的配置文件中读取嵌套属性

来自分类Dev

无法读取jQuery Datatables中的NULL属性

来自分类Dev

如何修复无法读取Angular中的属性

来自分类Dev

无法在React中读取null的属性'style'

来自分类Dev

无法读取jsp中的bean属性

来自分类Dev

无法读取jQuery Datatables中的NULL属性

来自分类Dev

无法在xChart中读取null的属性“ getPropertyValue”

来自分类Dev

无法读取JavaScript中的json属性

来自分类Dev

无法在JavaScript中读取null的属性“长度”

来自分类Dev

无法读取 json 文件中的名称属性

来自分类Dev

无法读取javascript中数组元素的属性

来自分类Dev

嵌套属性中的嵌套属性

来自分类Dev

Angular:在界面中使用嵌套属性时无法读取未定义的属性

来自分类Dev

未捕获的TypeError:无法读取null的属性'__e3_'

来自分类Dev

Google表格onEdit(e)TypeError:无法读取属性

Related 相关文章

  1. 1

    嵌套网格中的ExtJS错误:无法读取null的属性'isGroupHeader'

  2. 2

    无法读取嵌套函数中的“ get” $ http属性

  3. 3

    无法读取Angular 2中的嵌套调用中未定义的属性“ subscribe”

  4. 4

    无法读取setInterval中的属性

  5. 5

    无法读取 foreach 中的属性?

  6. 6

    无法读取 express 中的属性

  7. 7

    指令无法从“属性”中读取属性

  8. 8

    E2E测试中的“ TypeError:无法读取未定义的属性'close'”

  9. 9

    从文件中读取所有属性(也包括嵌套属性!)

  10. 10

    读取在 React 中作为属性传递的嵌套对象的属性

  11. 11

    角嵌套承诺'无法读取未定义的属性'then'

  12. 12

    AngularJS-$ httpBackend无法读取嵌套的JSON属性

  13. 13

    Ruby on Rails中的嵌套属性无法保存

  14. 14

    如何从MongoDB Java中的多个嵌套文档中读取属性?

  15. 15

    如何从java中的配置文件中读取嵌套属性

  16. 16

    无法读取jQuery Datatables中的NULL属性

  17. 17

    如何修复无法读取Angular中的属性

  18. 18

    无法在React中读取null的属性'style'

  19. 19

    无法读取jsp中的bean属性

  20. 20

    无法读取jQuery Datatables中的NULL属性

  21. 21

    无法在xChart中读取null的属性“ getPropertyValue”

  22. 22

    无法读取JavaScript中的json属性

  23. 23

    无法在JavaScript中读取null的属性“长度”

  24. 24

    无法读取 json 文件中的名称属性

  25. 25

    无法读取javascript中数组元素的属性

  26. 26

    嵌套属性中的嵌套属性

  27. 27

    Angular:在界面中使用嵌套属性时无法读取未定义的属性

  28. 28

    未捕获的TypeError:无法读取null的属性'__e3_'

  29. 29

    Google表格onEdit(e)TypeError:无法读取属性

热门标签

归档