我在UrlFetchApp类fetch()方法上遇到了一些问题。我已经挑出了这个问题,似乎事实上我提取的实际链接太长了
当我消除一些所需的数据(产生~1900个字符)时,它会发送获取请求
长度限制在2040到2060个字符之间,因为它停止工作,我收到“错误请求”错误。我假设它是2048年,因为这似乎是不久前的行业标准。
我需要从超过3400个字符的链接中获取数据!这太长了吗?一段时间内,2048个字符可能是可以理解的,但在这个时代,这是一个经常遇到的限制
我的问题是:有办法解决这个问题吗?我假设谷歌设定了限制,是否有某种方式可以提出要求提出此限制?
谢谢!
答案 0 :(得分:0)
您可以尝试UrlShortener缩短网址,然后将UrlFetchApp与缩短的网址一起使用
答案 1 :(得分:0)
restriction的大小(2kB),而不是网址的长度。
2018年3月30日,Google弃用了已接受的答案中使用的URL Shortener服务。
我写了script来使用Firebase动态链接短链接API服务。
如果您想自己做饭,文档就是here。
答案 2 :(得分:0)
我改为使用带有有效负载数据的 POST 方法,如下所示:
classic code 是:
// Make a POST request with form data.
var resumeBlob = Utilities.newBlob('Hire me!', 'text/plain', 'resume.txt');
var formData = {
'name': 'Bob Smith',
'email': 'bob@example.com',
'resume': resumeBlob
};
// Because payload is a JavaScript object, it is interpreted as
// as form data. (No need to specify contentType; it automatically
// defaults to either 'application/x-www-form-urlencoded'
// or 'multipart/form-data')
var options = {
'method' : 'post',
'payload' : formData
};
UrlFetchApp.fetch('https://httpbin.org/post', options);