【问题标题】:How to fetch specific fileds in json request by url如何通过url获取json请求中的特定字段
【发布时间】:2020-05-05 19:21:01
【问题描述】:

我在我的应用程序中有 api 调用,我想要的是从 json 响应中获取前 10 个项目,但不是在解决承诺之后直接在 url 中。 json 文件很大 (400 KB)。

部分响应json是:

{
    "title": "Homepage",
    "id": 0,
    "version": "2.0",
    "packages": [
        {
            "nid": "818974",
            "title": "Bürgermeister aus Luxemburg und Deutschland beklagen „untragbare Zustände“ ",
            "body": "<strong class=\"teaser text-left\"><p></p>\n<p>Die Grenzkontrollen werden noch bis Mitte Mai verlängert. Mit dieser Ankündigung verärgerte der deutsche 
---
---
,
        {
            "nid": "819028",
            "title": "Platz für sanfte Mobilität, aber nicht für die „Keeseminnen“",
            "body": "<strong class=\"teaser text-left\"><p></p>\n<p>Einige Tage nach Beginn der von ArcelorMittal durchgeführten Demolierungs- und Sanierungsarbeiten auf dem 
---
---

获取文章的函数:

export async function getArticles(){

    try {
        let articles = await fetch(`url`);
        let result = await articles.json();
        return result;

    } catch (error) {
        throw error
    }
}
componentDidMount() {
        getArticles().then(data => {
            this.setState({
                isLoading: false,
                data: data
            })
        }, error => {
            Alert.alert("Error", "Something happend, please try again")
        })
    }

我在主页后尝试了 ?per_page 或 ?page 等于 10,但它始终不起作用。

【问题讨论】:

  • 感谢您接受我的回答!我很感激。

标签: json react-native


【解决方案1】:

这是后端开发人员编写的 API,它基于 REST API,因此当您将其称为 GETPOST 或其他任何名称时,您只需获取 JSON是后端开发人员设计的。

然而,有一种新技术叫做 GraphQL。您可以调用 API,然后您只需获取所需的 JSON。此外,它必须在后端实现,但这是可能的。

另外,如果是分页的,你可以在API的文档中看到。然后检查每个页面返回多少结果。因此,如果第一页仅返回十个结果,您可以将 page_id 添加到请求参数或文档提供的任何参数中,以仅检索您想要的结果数量

如果它对您的问题有帮助,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-26
    • 2015-11-21
    • 1970-01-01
    • 2020-08-29
    • 1970-01-01
    • 1970-01-01
    • 2016-04-29
    • 1970-01-01
    相关资源
    最近更新 更多