为了提供此示例,首先解释所有关于HTTP的基础知识。这很重要,以便理解接口的工作原理。
以下几点必须特别注意:
URL的结构如下:
http://server.tld/getdata?project=you%26i+project&id=25#anker
| 组件 | 含义 |
|---|---|
| http:// | 定义协议。Antcas Control目前支持http和https。 |
| server.tld | 定义目标服务器的域名(DNS)或IP地址。 |
| getdata | 是服务器的URI。它对应于目标页面,类似于路径。 |
| ?[...] | 问号将URL与所谓的GET请求分开,后面跟着所有表单数据也称为查询。查询总是被编码以替换不支持的字符。 |
| #[...] | #号定义页面上的锚点。这样可以跳转到任意位置(滚动)。这些数据不会传输给服务器。此外,此区域包括#不能复制到查询中,否则会调用服务器上的其他目标页面。 |
目标服务器的配置在相应的HTTP网关中进行。
查询的构建由头部和主体组成。头部在第一行始终显示使用的方法、URI和协议。
GET /getdata?project=you%26i+project&id=25 HTTP/1.1
Host: server.tld
然后是服务器的响应。它包含查询的状态代码。主体在头部后面跟着一个空行。
HTTP/1.1 200 OK
Server: Apache2
Content-Type: text/html
<html>Hallo Welt</html>
状态代码被分为组。组由第一个数字定义。此外,在数字后面是明确的含义。以下是一些示例:
| 状态 | 描述 |
|---|---|
| 200 OK | 请求成功。 |
| 301 Found | 重定向到实际页面。由于Antcas Control会跟随链接,此响应通常被隐藏。 |
| 404 Not Found | 未找到指定的页面。 |
| 500 Internal Server Error | 发生了服务器错误。 |
GET和POST方法使用最频繁。
| 方法 | 描述 |
|---|---|
| GET | GET查询是标准查询。它不支持内容。 |
| POST | POST查询将内容发送到服务器。内容可以为空。优点在于内容没有长度限制。在GET请求中,只能传输一定数量的数据。 |
| PUT | PUT被接口用来交换信息。 |
| DELETE | 与PUT一起用于删除数据。 |
| (其他) | 其他HTTP方法也被支持,但需要相应的配置。 |
大多数身份验证在头部中进行。但是,也有请求在查询或内容中定义。
可能需要在实际查询之前创建一个会话。然后,会话被设置为头部Set-Cookie。然后必须再次传递此Cookie。Cookie的内容是区分大小写的,这意味着内容必须一对一地传递。以下是一个简化的示例:
POST /login HTTP/1.1
Host: server.tld
username=myname&password=1234
服务器响应:
HTTP/1.1 200 OK
Server: Apache2
Content-Type: text/html
Set-Cookie: SESSION=vmvbquk7dq6dbbcq
现在可以在下一个查询中再次使用Cookie:
GET /opendoor HTTP/1.1
Host: server.tld
Cookie: SESSION=vmvbquk7dq6dbbcq
在浏览器的开发者控制台中,可以在网络下评估和测试请求。此外,有时建议复制或查看头部。
在Antcas Control中创建一个HTTP接口与一个网关。网关被配置为HTTP客户端。在此处输入目标地址和端口(所需)。然后,在结构中配置查询。为此,在通信下将URL作为变量输入。
要创建一个简单的查询,请选择任意数据类型。此数据类型优先是字符串(string)。如果输出发生值更改,则会执行查询。然后,该值将直接用作查询。
使用功能块HTTP_REQUEST创建更复杂的查询。为此,必须将通信的数据类型设置为raw。然后可以使用功能块HTTP_RESPONSE评估响应。为了正确分配请求的响应,必须确保查询ID被链接。
在此示例中,使用GET方法将数据发送到服务器并评估响应。完整URL如下:
http://server.tld/getdata?project=you%26i+project&id=25
为了能够从服务器获取或发送数据,使用以下示例:

注意:示例没有显示如何触发请求。它通过输入SET的正边沿触发。为了防止意外查询,应将输入DIS设置为TRUE。
接口配置如下:
