我通過動態構建URL來製作多個GET
請求。
對於任何錯誤,我想抓取值response.config.url
,處理它,並將結果值推送到一個對象中。
下面的代碼工作正常,當我只有一個錯誤。
當返回多個錯誤時,只有最後一個錯誤的值被推送到對象中。我想那是因爲它會覆蓋前一個(s)。
我該如何預防?如何確保在出現多個錯誤時將所有值都推送到對象中?
(注:annotation
是一個字符串我從輸入字段得到的數組; _
是lodash)
function checkVariants(annotation) {
var lemmas = annotation.text.split(' ');
var results = [];
var words = [];
for (var i = 0; i < lemmas.length; ++i) {
var urlLemmas = encodeURIComponent(lemmas[i]).toLowerCase();
results.push(urlLemmas);
$http({
method: 'GET',
url: 'https://xxxxxxx.org/variants/' + results[i] + '.txt'
}).then(function successCallback(response) {
console.log('Success: ', response.status)
}, function errorCallback(response) {
var url = response.config.url;
words = url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf("."));
_.extend(annotation, {
variants: words
});
})
}
}
你是如何調用多個請求?循環內?什麼是註釋,什麼是你想要的輸出(帶有多個錯誤字符串)? –