刚吃完早餐已经遇到麻烦了。我正在尝试从我的google页面中调用salesforce REST。我已经在python中本地编写了一个工作脚本,但是将其转换为JS,出现了一些问题:
function authenticateSF(){
var url = 'https://login.salesforce.com/services/oauth2/token';
var options = {
grant_type:'password',
client_id:'XXXXXXXXXXX',
client_secret:'111111111111',
username:'ITSME@smee.com',
password:'smee'
};
var results = UrlFetchApp.fetch(url, options);
}以下是错误响应:
https://login.salesforce.com/services/oauth2/token返回代码400的请求失败。截断服务器响应:{“error_description”:“授予类型不受支持”、“错误”:“unsupported_grant_type”}(使用muteHttpExceptions选项检查完整响应)(第12行,文件“代码”)
请注意,这些精确的参数在我的本地python脚本中工作得很好(将键值放入引号中)。
以下是相关的文档:Google脚本:连接到外部API的 Salesforce: REST指南
谢谢大家!
发布于 2014-12-02 14:59:31
谷歌的UrlFetchApp对象自动默认为GET请求。要进行身份验证,必须在选项中显式设置“post”方法:
function authenticateSF(){
var url = 'https://login.salesforce.com/services/oauth2/token';
var payload = {
'grant_type':'password',
'client_id':'XXXXXXXXXXX',
'client_secret':'111111111111',
'username':'ITSME@smee.com',
'password':'smee'
};
var options = {
'method':'post',
'payload':payload
};
var results = UrlFetchApp.fetch(url, options);
}https://stackoverflow.com/questions/27252049
复制相似问题