示例代码是这样给我的。
示例调用
curl --location --request POST 'https://authentication.carfax.ca/oauth/token'
--header 'Content-Type: application/x-www-form-urlencoded'
--header 'Cookie: did=s%3Av0%3Ad4c8e610-067c-11ec-84ad-
83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg;
did_compat=s%3Av0%3Ad4c8e610-067c-11ec-84ad-
83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg'
--data-urlencode 'audience=https://api.carfax.ca'
--data-urlencode 'grant_type=client_credentials'
--data-urlencode 'client_id=PROVIDEDBYINTEGRATIONSUPPORT'
--data-urlencode 'client_secret=PROVIDEDBYINTEGRATIONSUPPORT'
我的应用程序脚本代码如下所示,其中client_id被更改为我的实际客户端id,client_secret也被更新。我无法使此代码工作。有人能建议我如何重写代码吗?
function myFunction() {
var url = 'https://authentication.carfax.ca/oauth/token';
var headers = {
'Content-Type': 'application/x-www-form-urlencoded',
'Cookie': 'did=s%3Av0%3Ad4c8e610-067c-11ec-84ad-83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg;did_compat=s%3Av0%3Ad4c8e610-067c-11ec-84ad-83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg',
"data-urlencode": {
'audience': 'https://api.carfax.ca',
'grant_type': 'client_credentials',
'client_id': 'xT18269vTVFk6Cy2QUjSyzVxs8BZcN6j',
'client_secret': '1Fz57F-lUuTZODoICC68ZUqSQoL6MCx4xR8PP9Bqfh6qGJThCC59uRZkJQF75HOK'
}
};
var response = UrlFetchApp.fetch(url, headers);
var text = response.getResponseCode();
Logger.log(headers);
}
我相信您的目标如下。
-
您想要将以下curl命令转换为Google Apps脚本。
curl --location --request POST 'https://authentication.carfax.ca/oauth/token' --header 'Content-Type: application/x-www-form-urlencoded' --header 'Cookie: did=s%3Av0%3Ad4c8e610-067c-11ec-84ad- 83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg; did_compat=s%3Av0%3Ad4c8e610-067c-11ec-84ad- 83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg' --data-urlencode 'audience=https://api.carfax.ca' --data-urlencode 'grant_type=client_credentials' --data-urlencode 'client_id=PROVIDEDBYINTEGRATIONSUPPORT' --data-urlencode 'client_secret=PROVIDEDBYINTEGRATIONSUPPORT'
在这种情况下,请修改如下。
发件人:
var headers = {
'Content-Type': 'application/x-www-form-urlencoded',
'Cookie': 'did=s%3Av0%3Ad4c8e610-067c-11ec-84ad-83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg;did_compat=s%3Av0%3Ad4c8e610-067c-11ec-84ad-83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg',
"data-urlencode": {
'audience': 'https://api.carfax.ca',
'grant_type': 'client_credentials',
'client_id': 'xT18269vTVFk6Cy2QUjSyzVxs8BZcN6j',
'client_secret': '1Fz57F-lUuTZODoICC68ZUqSQoL6MCx4xR8PP9Bqfh6qGJThCC59uRZkJQF75HOK'
}
};
var response = UrlFetchApp.fetch(url, headers);
收件人:
var options = {
"headers": { 'Cookie': 'did=s%3Av0%3Ad4c8e610-067c-11ec-84ad-83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg;did_compat=s%3Av0%3Ad4c8e610-067c-11ec-84ad-83a048983dd7.IfTEs0EGLJ7r5kYxspPDGaSaw9fs2WPxYv5K%2FJv6Rpg' },
"payload": {
'audience': 'https://api.carfax.ca',
'grant_type': 'client_credentials',
'client_id': 'xT18269vTVFk6Cy2QUjSyzVxs8BZcN6j',
'client_secret': '1Fz57F-lUuTZODoICC68ZUqSQoL6MCx4xR8PP9Bqfh6qGJThCC59uRZkJQF75HOK'
}
};
var response = UrlFetchApp.fetch(url, options);
注:
- 在curl命令中,使用
Cookie
。在这种情况下,可能需要更新cookie。如果出现错误,请检查此项 - 如果出现类似状态代码
403
的错误,我担心在这种情况下,谷歌方面可能无法访问此URL
参考:
- fetch(url,params(