all*_*'OM 6 javascript reviver-function fetch-api
JSON.parse附带了一个“reviver”函数(例如:“JSON.parse using reviver function”)。
如何在response.json 中使用这个“复活者” ?例如:
fetch(url)
.then(a => a.json({reviver})) // unfortunately not working
.then(...)
Run Code Online (Sandbox Code Playgroud)
我有一个解决方法:
fetch(url)
.then(a => a.text())
.then(b => new Promise((resolve) => resolve(JSON.parse(b, reviver))))
.then()
Run Code Online (Sandbox Code Playgroud)
但它多用了一步,这似乎没用。有什么更好的主意吗?
Emi*_*ary 10
您的解决方法基本上是最好的选择,但如上所述,额外的承诺是不必要的。
fetch(url)
.then(response => response.text())
.then(text => JSON.parse(text, reviver))
// ...
Run Code Online (Sandbox Code Playgroud)
Jan*_*nus -5
你可以这样做:
fetch(url)
.then((response) => {return response.json()})
.then((json) => {console.log(json)});Run Code Online (Sandbox Code Playgroud)
希望能帮助到你 ;)