API GET 请求未反映数据库中的更改,延迟了 5 分钟

问题描述 投票:0回答:1

我正在尝试制作一个网络应用程序,当新的疫苗槽到达政府门户网站时,使用提供的公共 API 发出通知。

我需要的是每分钟调用一次API并检查插槽是否已添加到数据库中。但我得到的响应是陈旧的,因为我的应用程序(也在 Chrome 中)检测到的新会话大约有 5 分钟旧,我知道这一点是因为一些电报频道比我的应用程序更早显示更新。

此外,当我尝试使用 Postman 使用相同的 API 时,我得到的响应是新鲜的。

问题是 - Chorme/myApp 响应未反映更新的数据库...但 postman 正在显示更新的数据库...chrome 在 Postman 中显示后 5 分钟即可获取更新的响应。

公共API:https://cdn-api.co-vin.in/api/v2/appointment/sessions/public/calendarByDistrict?district_id=141&date=06-07-2021

let response = await fetch(`https://cdn-api.co-vin.in/api/v2/appointment/sessions/public/calendarByDistrict?district_id=${id}&date=${today}`, {
            method: 'GET',
            headers: {
                'Content-Type': 'application/json',
                'Connection': 'keep-alive',
            },
        })

我需要更改获取请求中的一些标头或其他内容吗?...或其他内容?

帮帮忙,我修一下...

javascript node.js get postman fetch-api
1个回答
0
投票

有几件事。
首先,使用按地区查找 API 而不是按地区日历 API。这样更准确。
https://cdn-api.co-vin.in/api/v2/appointment/sessions/public/findByDistrict?district_id=512&date=31-03-2021
其次,传递用户代理。这是 PHP 语言,但您可以随时更新到其他语言。

    $header     = array(
                    "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
                    "Pragma: no-cache",
                    "Cache-Control: no-cache",
                    "Accept-Language: en-us",
                    "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Safari/605.1.15",
                    "Upgrade-Insecure-Requests: 1"
                    );
© www.soinside.com 2019 - 2024. All rights reserved.