javascript - 如何使用 d3 将 URL 列表映射到 JSON 对象列表?
问题描述
我有一个 URL 字符串数组,我想从每个 URL 获取 JSON,并最终得到一个 JSON 对象数组。但是,此代码为我提供了有关 JSON 的元数据(标头、mimetypes)数组,而不是实际的 JSON。
<script>
// Formatting dates
var startDate = new Date()
startDate.setDate(startDate.getDate()-120)
var endDate = new Date()
endDate.setDate(endDate.getDate()-1)
let startDateString = startDate.toISOString().slice(0, 10)
let endDateString = endDate.toISOString().slice(0, 10)
function getURL(ticker) {
return `https://api.polygon.io/v2/aggs/ticker/${ticker}/range/1/day/${startDateString}/${endDateString}?adjusted=true&sort=asc&apiKey=XXX`
}
d3.csv('stocks.csv', function (data) {
// I get the ticker from each row of stocks.csv and map it to a url
let tickers = [...new Set(data.map(d => d.code))]
let urls = tickers.map(d => getURL(d))
Promise.all(
urls.map(url => d3.json(url, function (data) {
// I want the last 60 trading days
return data.results.slice(-60)
}))
).then((data) => {
// data should be the array of json objects but is instead an array of metadata objects
console.log(data)
})
})
解决方案
推荐阅读
- javascript - 如何构建我的 TypeScript API 的“索引”,而不会一直显示在 IntelliSense 上?
- r - R Markdown/Flexdashboard
- django - PostgreSQL 上的错误:行号:1 - 类型字符变化的值太长(10)
- snowflake-cloud-data-platform - Snowflake Javascript UDF:嵌套在作为科学计数法发出的对象中的十进制值
- html - 如何在 html 中的视频顶部放置文本和图标
- php - 在 SQL Server 表中观察插入的最佳方法
- assembly - BIOS 中断 0x10/AH=0x13(写入字符串)的问题
- c++ - 有没有办法在 c++ Xcode 中安装或删除 lc++ 编译器选项
- c - 在C中反转一串位但是当我将它返回给主函数时,我会作为随机字符出现..我该怎么办?
- github - 对私有存储库的拉取请求运行工作流?