我如何从以下回复中获得标题[关闭]

Posted

技术标签:

【中文标题】我如何从以下回复中获得标题[关闭]【英文标题】:how i get title from following response [closed] 【发布时间】:2021-03-06 17:07:08 【问题描述】:

如何从以下 json 响应中获取标题或正文?


    "message": "All Books",
    "data": 
        "current_page": 1,
        "data": [
            
                "id": 2,
                "title": "The Quran",
                "slug": "the-quran",
                "body": "The Holy Quran",
                "book": "/storage/books/1602685137.pdf",
                "cover": "/storage/covers/1602685137.jpg",
                "os": "both",
                "price_ios": 0,
                "price_android": 0,
                "created_at": "2020-10-14T14:18:57.000000Z",
                "updated_at": "2020-10-14T14:18:57.000000Z"
            
        ],
        "first_page_url": "https://book.test/api/v1/books?page=1",
        "from": 1,
        "last_page": 1,
        "last_page_url": "https://book.test/api/v1/books?page=1",
        "links": [
            
                "url": null,
                "label": "Previous",
                "active": false
            ,
            
                "url": "https://book.test/api/v1/books?page=1",
                "label": 1,
                "active": true
            ,
            
                "url": null,
                "label": "Next",
                "active": false
            
        ],
        "next_page_url": null,
        "path": "https://book.test/api/v1/books",
        "per_page": 15,
        "prev_page_url": null,
        "to": 1,
        "total": 1
    

【问题讨论】:

请不要简单地重复单词来绕过代码/文本比例限制。相反,请添加有用的信息,例如您已经尝试过的内容以及它对您不起作用的原因。 JSON.parse() 可能对您有用。 ????好的 。接下来,如果它说需要更多文字,我会尝试这些东西 我正在使用 axios 来获取响应:喜欢 (response.data) 给予所有响应。但我需要标题,正文..等 要从提供的结构中访问标题,请使用data.data[0].title 【参考方案1】:

假设json存储在一个变量res中。

由于第二个数据对象存储为数组[]。

title = res['data']['data'][0]['title'];
body = res['data']['data'][0]['body'];

如果您发现数组有多个对象的情况,则必须将 0 更改为数组中对象的索引。 参考:www.json.org

【讨论】:

感谢 Daedalus 发现这一点。已更正 谢谢@Schiphol。我尝试了你的答案,但同样得到了完整的答案 你说你用的是axios。这是您将 response.data 记录到控制台时的输出吗?然后title = response.data.data.data[0].title【参考方案2】:

假设您的 JSON 已分配给名为 response 的变量,您可以通过以下方式访问正文:let body = response.data.data[0].body

标题与let title = response.data.data[0].title

如果您想遍历数据数组以获取所有条目(例如标题)的值,请尝试以下操作:let titles = response.data.data.forEach(entry => console.log(entry.title));

【讨论】:

以上是关于我如何从以下回复中获得标题[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何从 DTMF 音调中获得低频 [关闭]

我如何从这个 jogl 程序中获得更多的每秒帧数? [关闭]

如何从charindex获得准确的结果? [关闭]

尽管在沙盒环境中工作良好,但我无法在生产环境中获得令牌

为啥 iPhone 应用程序在获得请求和展示次数后也没有从广告中获得任何收入? [关闭]

从BitTrent的DHT引导中获得混乱的回复