Excel服务器云平台-E立方管理平台-低代码快速开发平台

Excel服务器WebApi查询天气预报

日期:2024-11-01 14:45  |  分类:查询管理  |  人气:

在HTTP协议中,请求访问资源的一端称为客户端,提供资源响应的一端称为服务端,接口请求必须是由客户端发出,服务端回复响应。
 
一个 HTTP API接口的调用过程:
    (1)、客户端与服务器建立连接
    (2)、客户端向服务器提出请求
    (3)、服务器接收请求,并根据请求返回相应的应答内容
    (4)、客户端与服务器断开连接
 
一个HTTP API的构成一般是:
    URL、Query参数、Header参数、Body参数、结果输出
 
下面我们举例说明一下,第一个例子是调用API接口查询最近31天某个城市的天气;要调用某个API,你第一时间需要做的是找到并阅读接口提供者所提供的接口说明文档,文档里通常对接口有详细的调用说明、注意事项、举例等。如下图所示:


以上就是获取天气的HTTP API的官方说明,下面开始在我们平台设置这个WebApi数据源,然后再通过取数公式从这个数据源获取天气数据。
用管理员登录Excel客户端,进入到 “系统管理 - WebApi数据源“,如下图所示:

点击“新建”,如下图所示:

A、数据源名称:给这个WebApi数据源设置一个名称,比如“查天气”
 

 
B、URL:从上图接口文档可知,URL就是 http://v1.yiketianqi.com/free/month ,或者是请求示例中,问号“ ?”前面的部分
 
C、请求方式:常用是GET和 POST两种,
GET:用于获取数据,通常通过URL传递参数;
POST:用于提交数据,在请求体中传递数据;
如上图所示的请求方式是GET,所以选择GET;大部分情况下,如果输入参数中存在Body参数就会使用POST方法,否则就是使用GET方法。
 
D、输入参数:目前支持3种输入参数,分别是Body参数、Query参数和Header参数;
在调用Web API时,通常需要传递一些参数给服务器,以便获取相应的数据或执行相应的操作。参数可以通过URL(即Query参数)或请求体(即Body参数)进行传递。
 
Query参数
通过在URL后面添加查询字符串来传递参数的。查询字符串以问号(?)开始,后面跟着参数名和参数值(用等号=连接),多个参数之间用和号(&)连接。例如
 

如上图例子中就包含了4个Query参数,分别是unescape、appid、appsecret和city,等号(=)右边的内容就是这些参数的值。
 
Body参数
通过在HTTP请求的消息体中传递参数的。请求体通常用于传递较为复杂的数据
结构,如JSON或XML格式的数据,本系统暂时只支持JSON类型的数据。使用POST
请求方式,将数据放在请求体中传递给服务器。
例如:{“name”:”张三”,”education”:”本科”}
 
Header参数
除了前面2种参数外,有时候还需要设置一些请求头来告诉服务器关于请求的一些附加信息(这种参数整体来说相对较少应用)。
常见的请求头包括:
  • Content-Type
指定请求体的数据类型,如application/json、application/xml等。
  • Authorization
用于身份验证和授权,通常包含令牌或凭证信息。
  • Accept
指定服务器返回的数据类型,如application/json、text/html等。
 
在每个调用请求中,以上3种参数可以同时存在1种或者多种。在查天气的例子中,根据说明文档,只需要Query参数即可,大部分查询性质的API的参数都是以Query参数形式居多,比如要查询广州市未来31天的天气预报,就可以使用如下的调用:
 

(其中appid和appsecret两个参数是通过在天气网站注册用户后才能获取)。
 
下面我们开始设置Query参数,如下图所示:

如上图所示,我们可以把示例中的整个URL连同参数一起拷贝粘贴到参数样本输入框中,然后点击“生成参数表”按钮即可自动建立Query参数表,如上图所示;当然,你也可以通过“新建”按钮,逐个手动建立。
建立的时候,默认情况下,参数名称和别名都是一样,你可以根据需要设置自己容易理解的别名,目前别名的作用仅此而已,类型默认是字符类型,你可以根据实际,下拉选择合适的类型。
 
E、输出数据表:
为方便取数公式对结果的引用,系统会把API的结果转成数据表的方式,那怎么定义这些数据表呢?方法很简单,我们只需要在接口文档的示例中找到结果例子,并拷贝粘贴到“Json结构参数样本”的输入框中,如下图所示:

接着点击“生成输出表”按钮即可,这样系统就会自动生成一张或者多张数据表,如下图所示:

Json数据中的数组会转化为明细数据表,并且会自动生成一个关联数据项目。如果要在取数公式中获取API的结果,那么就在公式的来源数据表中选择这些“输入数据表”即可。
    到这里,查天气的Web API数据源就算定义完成了。