私が使用しているAPIはowapi.net/api/v3/u/Calvin-1337/stats
です(名前は変更されます)。私がtier
を望んでいたら、それはJSON.us.stats.competitive.overall_stats.tier
となり、それを解析して大丈夫になるとしましょう。しかし、今私は約束を作りたいと思っています。 overall_stats
のためにそれを作ろう... us.stats.competitive.overall_stats
と私は瞬間だけそこから値が欲しいです。API(オブジェクト)からプロミスを作成
const core = require("myNodePackage");
core.getCompOverallStats("Calvin-1337").then(data > {
console.log(data.tier) // grandmaster
// etc through to
console.log(data.prestige) // 5
});
これは完全に間違っているが、私はおよそ考えていたもの:十分なはず
const fetch = require("node-fetch"); // used to get json data
getCompOverallStats = (playerName) => {
return new Promise((resolve, reject) => {
// only want this for us.stats.competitive.overall_stats
fetch("https://owapi.net/api/v3/u/Calvin-1337/stats")
.then(function(res) => {
return res.json();
}).then(function(json) {
//console.log(json.us.stats.competitive.overall_stats.tier) => grandmaster
});
を呼び出すことができるはずです。 – OmG
return fetch.then(d => d.json());十分です... –
['Promise'コンストラクタの反パターンを避けてください](https://stackoverflow.com/q/23803743/1048572?What-is-the-promise-construction-antipattern-and-how-to-avoid-それ)! – Bergi