我有一個充滿 id 的大陣列(陣列大小總是很大,例如超過 1000)[000001,000002,000003,000004,...],我想向一個 API 發送一個請求,該 API 一次最多可以包含 100 個這些 id(這是一個限制) ,每個請求只有 100 個 ID,而且我無法控制)
端點將這些 id 作為 url 引數,?ids=000001,000002,000003,000004,...但我正在努力弄清楚我需要執行的邏輯來回圈每 100 個條目并獲取這些條目,發送請求然后重復,直到所有條目都已添加到請求中?
這是我在這里的第一個問題,所以如果這不是正確的格式,我很抱歉,我真的需要對這個問題進行邏輯檢查......
uj5u.com熱心網友回復:
您可以像這樣使用 JSON:
let createdJson = JSON.stringify(myIntArray);
// here send your request with :
sendRequest("http://url/?json=" createdJson);
然后,在另一邊你使用類似的東西:
在這個例子中,我使用的是 PhP。
$intArray = json_decode($_GET["json"]);
// now you have your int array
uj5u.com熱心網友回復:
一般原則是首先將大陣列拆分成塊,然后從每個塊形成一個請求,發送它,等待回應,保持結果,然后發送下一個。
這是一些沒有詳細資訊的代碼:
const chunks = chunkArray(largeArray) // returns an array of arrays
let responses = []
for(const chunk of chunks){
const query = createQueryStringFromArray(chunk)
const response = await sendQuery(query) // post to API
responses = [...responses, response] // keep hold of results
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/322597.html
標籤:javascript 数组 循环 要求 逻辑
上一篇:URLs在GET請求中忽略了引數(ASP.NET)。
下一篇:R創建重復列(批量)
