当前位置:   article > 正文

esp32获取网络时间_如何从网站获取时间天气

如何从网站获取时间天气

文章目录


esp32获取天气数据的流程类似的,我们从另一个网站获取时间。

#define TIME_URL "https://api.uukit.com/time"	//api接口
  • 1

我们对其接口发起请求,返回结果如下:

{
    "status": 1,
    "data": {
        "timestamp": 1616556071,
        "microtime": 1616556071.259844,
        "gmt": "2021-03-24 03:21:11",
        "utc": "2021-03-24T03:21:11Z",
        "timezone": "Shanghai"
    },
    "req_id": "3b853233236df4a63608"
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

以下代码实现对该接口的请求,并使用cjson解析出时间信息。

            config.url = TIME_URL;  //设置url,请求方式
            config.method = HTTP_METHOD_GET;
            printf("start connect to url = %s\r\n",config.url);
            client = esp_http_client_init(&config);
            esp_http_client_perform(client);    //发起http连接
            esp_http_client_close(client);
            esp_http_client_cleanup(client);

            cJSON *root = cJSON_Parse(http_data);   //解析返回的时间json数据
            if(root!=NULL)
            {
                cJSON *time = cJSON_GetObjectItem(root,"data");
                time = cJSON_GetObjectItem(time, "gmt");
                char *t = cJSON_GetStringValue(time);
                if(t==NULL)
                {
                    ESP_LOGI(TAG, "time error");
                }else{

                ESP_LOGI(TAG, "time = %s",t);
                
                strncpy(str_time, t, 25);   //将字符串复制到str_time

                cJSON_Delete(root);
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/471994
推荐阅读
相关标签
  

闽ICP备14008679号