Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 参数类型与UrlFetchApp负载不匹配_Javascript_Google Apps Script_Google Sheets_Payload_Urlfetch - Fatal编程技术网

Javascript 参数类型与UrlFetchApp负载不匹配

Javascript 参数类型与UrlFetchApp负载不匹配,javascript,google-apps-script,google-sheets,payload,urlfetch,Javascript,Google Apps Script,Google Sheets,Payload,Urlfetch,我收到错误:当我尝试使用Google Apps脚本执行POST请求时,传递的参数类型不匹配:“字段” 我尝试在有效负载上添加JSON.stringify(requestBody),但也没有成功。我哪里出了问题 var fields = ["id","name","group_name"] var requestBody = { "project_id": "3259344", "fields": fields, "limit": "30" } var op

我收到错误:当我尝试使用Google Apps脚本执行POST请求时,传递的参数类型不匹配:“字段”

我尝试在有效负载上添加
JSON.stringify(requestBody)
,但也没有成功。我哪里出了问题

 var fields = ["id","name","group_name"]

  var requestBody = {
    "project_id": "3259344",
    "fields": fields,
    "limit": "30"
} 

  var options =
      {
           'method'  : 'POST',
           'headers' : {
           'User-Id' : email,
           'Authorization' : 'Bearer '+ apiKey
           }, 
          'payload' : requestBody
      };


var response = UrlFetchApp.fetch("https://api.test.com/v2/json/get/keywords", options);


我不确定您要使用的API的详细规范。因此,从您问题中的错误消息来看,以下3种修改模式如何

模式1: 修改脚本: 模式2: 修改脚本: 模式3: 修改脚本: 参考:

非常感谢您抽出时间回答我的问题。不幸的是,我仍然收到相同的错误。这是API:对不起,模式1实际上已经起作用了。非常感谢@安德鲁·查尔顿感谢您回复和测试脚本。我很高兴你的问题解决了。也谢谢你。
var fields = ["id","name","group_name"];
var requestBody = {
  "project_id": "3259344",
  "fields": fields,
  "limit": "30"
};
var options = {
  'method'  : 'POST',
  'headers' : {
    'User-Id' : email,
    'Authorization' : 'Bearer ' + apiKey
  }, 
  'payload' : JSON.stringify(requestBody),  // Modified
  'contentType': 'application/json'  // Added
};
var response = UrlFetchApp.fetch("https://api.test.com/v2/json/get/keywords", options);
var fields = "id,name,group_name";  // Modified
var requestBody = {
  "project_id": "3259344",
  "fields": fields,
  "limit": "30"
};
var options = {
  'method'  : 'POST',
  'headers' : {
    'User-Id' : email,
    'Authorization' : 'Bearer ' + apiKey
  }, 
  'payload' : JSON.stringify(requestBody),  // Modified
  'contentType': 'application/json'  // Added
};
var response = UrlFetchApp.fetch("https://api.test.com/v2/json/get/keywords", options);
var fields = "id,name,group_name";  // Modified
var requestBody = {
  "project_id": "3259344",
  "fields": fields,
  "limit": "30"
};
var options = {
  'method'  : 'POST',
  'headers' : {
    'User-Id' : email,
    'Authorization' : 'Bearer ' + apiKey
  }, 
  'payload' : requestBody
};
var response = UrlFetchApp.fetch("https://api.test.com/v2/json/get/keywords", options);