스트라이프 노드 API를 사용하는 모든 고객의 목록을 컴파일하려고합니다. 한 번에 100 명의 고객을 계속 가져와야합니다. 나는 비동기 대기를 사용하기 위해 API 호출 내에서 Promise를 사용해야한다고 믿지만, 내 인생에서 그걸 어디에 넣어야 할지를 알 수 없다. 이 요지를 공개적으로 사용하기를 원하며 올바르게 받아보고 싶습니다. 감사합니다.async를 사용하여 모든 스트라이프 고객을 가져 오는 것이 좋습니다
getAllCustomers()
function getMoreCustomers(customers, offset, moreCustomers, limit) {
if (moreCustomers) {
stripe.customers.list({limit, offset},
(err, res) => {
offset += res.data.length
moreCustomers = res.has_more
customers.push(res.data)
return getMoreCustomers(customers, offset, moreCustomers, limit)
}
)
}
return customers
}
async function getAllCustomers() {
const customers = await getMoreCustomers([], 0, true, 100)
const content = JSON.stringify(customers)
fs.writeFile("/data/stripe-customers.json", content, 'utf8', function (err) {
if (err) {
return console.log(err);
}
console.log("The file was saved!");
});
}
처럼 고정 될 수있다 ...'우연히 약속을 반환 stripe.customers.list'는 무엇입니까? –
@ JaromandaX 예 그렇습니다 – user4815162342
약속의 가치는 무엇입니까? 콜백에서'res'와 동일합니까? –