available()
描述
取得一个与伺服端连线并且有资料要传送给伺服端的用户端。这个用户端的连线并不会因为 Client 物件解构而中断,如果要中断连线可以呼叫 client.stop()。
available() 是从 Stream 继承而来。
语法
server.available()
参数
无参数
回传
Client 物件:如果没有连线中的用户端或是连线中的用户端都没有资料可以读取,这个回传的 Client 物件等同于 false(参考以下范例)
范例
#include <Ethernet.h>
// IP 位址
byte ip[] = { 10, 0, 0, 177 };
// 路由器的通讯闸位址
byte gateway[] = { 10, 0, 0, 1 };
// 子网路遮罩
byte subnet[] = { 255, 255, 0, 0 };
// telnet 预设在埠编号 23
EthernetServer server = EthernetServer(23);
void setup()
{
// 初始化网路装置
Ethernet.begin(NULL, ip, gateway, subnet);
// 开始监听是否有连线请求
server.begin();
}
void loop()
{
// 如果有连线的请求,将会得到一个 Client 的物件
EthernetClient client = server.available();
if (client == true) {
// 从目前连线的用户端读取资料,并且回传到所有目前与伺服端连线的用户端
server.write(client.read());
}
}
See Also
The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.
