0

我想执行一个 Zoho CRM API 并写入我的 GAS

  var result=UrlFetchApp.fetch('https://crm.zoho.com/crm/private/xml/Leads/insertRecords?authtoken=XXXXX&scope=crmapi&newFormat=1&xmlData=<Leads><row no="1"><FL val="Company">Your Company</FL><FL val="First Name">Hannah</FL><FL val="Last Name">Smith</FL><FL val="Email">testing@testing.com</FL></row></Leads>');

我有一个错误

Argument non valide : https://crm.zoho.com/crm/private/xml/Leads/insertRecords?authtoken=XXXXXX&scope=crmapi&newFormat=1&xmlData=<Leads><row%20no="1"><FL%20val="Company">Your%20Company</FL><FL%20val="First%20Name">Hannah</FL><FL%20val="Last%20Name">Smith</FL><FL%20val="Email">testing@testing.com</FL></row></Leads> (ligne 35, fichier "MySQLtoZohoCRM")

但如果我将此 URL 粘贴到我的 Chrome 或 FF 中,它就会运行!!!

文档 API

你知道为什么我在 GAS 中而不是在 Chrome 中出现此错误吗?

谢谢

4

1 回答 1

1

有两种形式UrlFetchApp.fetch()

您使用的是第一个表单,但您提供的参数验证失败,因为它不仅仅是一个 URL。您应该使用第二种形式,将值放在“?”之后 作为选项。

尝试这个:

var url = 'https://crm.zoho.com/crm/private/xml/Leads/insertRecords';
var xmlData = '<Leads><row no="1"><FL val="Company">Your Company</FL><FL val="First Name">Hannah</FL><FL val="Last Name">Smith</FL><FL val="Email">testing@testing.com</FL></row></Leads>';
var options =
  {
     'authtoken' : 'XXXXX',
     'scope' : 'crmapi',
     'newFormat' : '1',
     'xmlData' : encodeURIComponent(xmlData)
  }
var result=UrlFetchApp.fetch(url,options);

var output = Utilities.jsonParse(result.getContentText());
Logger.log(output); 
于 2013-04-02T12:39:51.947 回答