Google apps script 使用UrlFetchApp.fetchAll将响应与请求匹配

Google apps script 使用UrlFetchApp.fetchAll将响应与请求匹配,google-apps-script,urlfetch,Google Apps Script,Urlfetch,我正在尝试使用谷歌应用程序脚本验证谷歌电子表格中存储的大量URL。由于有许多URL需要验证,而且UrlFetchApp.fetch不会并行执行http请求,因此速度会变慢。因此,我想使用异步工作的UrlFetchApp.fetchAll 但是,有一个问题: var responses = UrlFetchApp.fetchAll(["http://www.bar.com", "http://www.foo.com"]); responses[0] // Is this response from

我正在尝试使用谷歌应用程序脚本验证谷歌电子表格中存储的大量URL。由于有许多URL需要验证,而且
UrlFetchApp.fetch
不会并行执行http请求,因此速度会变慢。因此,我想使用异步工作的
UrlFetchApp.fetchAll

但是,有一个问题:

var responses = UrlFetchApp.fetchAll(["http://www.bar.com", "http://www.foo.com"]);
responses[0] // Is this response from http://www.bar.com or http://www.foo.com
responses[1] // Is this response from http://www.bar.com or http://www.foo.com

现在响应是
HTTPResponse
对象的数组。但是为了给用户反馈,我需要指出失败的响应。但问题是,作为响应,并没有对请求或URL的引用。所以问题是我有一个响应数组,但我找不到这个响应来自的URL。响应数组的顺序与给定给参数的顺序不同

当运行
UrlFetchApp.fetchAll(requestArray)
时,响应被放入一个数组中,响应数组的索引与
requestArray的索引相对应。为了正确理解您的问题,您能否提供复制您的情况的示例脚本?@Tanaike我认为您理解正确。是的,响应数组可以是不同的顺序。所以我不能通过索引来匹配它们。var responses=UrlFetchApp.fetchAll([“”,”);responses[0]//此响应来自还是响应[1]//此响应是否来自无效URL,或者如果这些URL实际上可能是无效URL,则如果要验证它们,则应禁用每个请求的http异常。为此,您需要首先获取每个请求的请求,然后传递对象数组而不是URL数组。在这种情况下,响应顺序是否仍然可变?我不能查找与问题跟踪器上关联请求的索引不同的数组索引中的响应的任何现有报告。提供一个@Sven Eller感谢您的答复。很遗憾,我无法复制您的情况。当
[“http://www.bar.com", "http://www.foo.com"]
用于fetchAll方法,响应按
[”的顺序检索http://www.bar.com", "http://www.foo.com“]
。对于这种情况,我深表歉意。当
UrlFetchApp.fetchAll(requestArray)时运行
,将响应放入一个数组中,响应数组的索引与
请求数组的索引相对应。为了正确理解您的问题,您能提供复制您的情况的示例脚本吗?@Tanaike我认为您理解正确。是的,响应数组的顺序可以不同。所以我不能t通过index.var responses=UrlFetchApp.fetchAll([“”,”);responses[0]//匹配它们。此响应来自还是响应[1]//此响应是否来自无效URL,或者如果这些URL实际上可能是无效URL,则如果要验证它们,则应禁用每个请求的http异常。为此,您需要首先获取每个请求的请求,然后传递对象数组而不是URL数组。在这种情况下,响应顺序是否仍然可变?我不能查找与问题跟踪器上关联请求的索引不同的数组索引中的响应的任何现有报告。提供一个@Sven Eller感谢您的答复。很遗憾,我无法复制您的情况。当
[“http://www.bar.com", "http://www.foo.com"]
用于fetchAll方法,响应按
[”的顺序检索http://www.bar.com", "http://www.foo.com“]
。对于这种情况,我深表歉意。