使用 fetch、cors 时如何从 json API 获取属性?

Posted

技术标签:

【中文标题】使用 fetch、cors 时如何从 json API 获取属性?【英文标题】:How to get properties from json API when using fetch, cors? 【发布时间】:2018-03-30 05:38:03 【问题描述】:

我需要通过访问此链接获取属性。

        fetch("https://pokeapi.co/api/v2/pokemon/28/").then(results => 
           console.log(results);
        )

我在控制台中收到此响应。

响应类型:“cors”,网址:“https://pokeapi.co/api/v2/pokemon/28/”, 重定向:false,状态:200,ok:true,... body:(...) bodyUsed:true headers:Headers ok:true 重定向:false status:200 statusText:"" 类型:“cors” 网址:“https://pokeapi.co/api/v2/pokemon/28/” 原型:响应

但我希望看到这样的东西:

               "forms": [                 "url":
            > "https://pokeapi.co/api/v2/pokemon-form/28/",             "name": "sandslash"
            >          ],  "abilities": [                 "slot": 3,          "is_hidden": true,
            >           "ability": 
            >               "url":  "name": "defense"   

                 ...

等等……我怎样才能得到这些数据? 我可以从他们的网站 pokeapi.co 访问它,但不能从我的应用程序访问它。 我做错了什么?请帮我理解!!

【问题讨论】:

【参考方案1】:
    fetch("https://pokeapi.co/api/v2/pokemon/28/").then(results =>  return results.json();
    ).then(data => 
        console.log(data);
    )

这是一个解决方案。这很奇怪,因为几个小时前是不同的反应。

【讨论】:

以上是关于使用 fetch、cors 时如何从 json API 获取属性?的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 javascript fetch 函数时设置公共 Google Cloud Storage 存储桶的 CORS 以避免错误?

如何解决 Fetch API js 中的 CORS 错误

stats.nba.com 的 CORS/CORB

如何在 fetch 中执行跨域请求以及异步等待? (CORS 错误)[重复]

从 Blazor 发出 CORS 请求时如何包含凭据?

使用 fetch API GET 请求管理 CORS