available()

描述

回传目前与 Client 连线的伺服端传送过来的资料量,这些资料都是目前可以读取的。

available() 是从 Stream 继承而来。

语法


client.available()

参数

无参数

回传

int:目前可以读取的资料量,以位元组为单位

范例

#include <WiFi.h>

char ssid[] = "myNetwork";          // 无线网路的 SSID
char pass[] = "myPassword";   // WPA 的密码

int status = WL_IDLE_STATUS;
char servername[]="google.com";  // Google

WiFiClient client;

void setup() {
  Serial.begin(9600);
  Serial.println("Attempting to connect to WPA network...");
  Serial.print("SSID: ");
  Serial.println(ssid);

  status = WiFi.begin(ssid, pass);
  if ( status != WL_CONNECTED) { 
    Serial.println("Couldn't get a wifi connection");
    while(true);
  } 
  else {
    Serial.println("Connected to wifi");
    Serial.println("\nStarting connection...");
    // 如果成功连线,透过序列埠印出讯息
    if (client.connect(servername, 80)) {
      Serial.println("connected");
      // 传送 HTTP 封包
      client.println("GET /search?q=arduino HTTP/1.0");
      client.println();
    }
  }
}

void loop() {
  // 如果有伺服端传送过来的资料,读取这些资料并且透过序列埠印出
  if (client.available()) {
    char c = client.read();
    Serial.print(c);
  }

  // 如果与伺服器的连线中断,关闭 client
  if (!client.connected()) {
    Serial.println();
    Serial.println("disconnecting.");
    client.stop();

    for(;;)
      ;
  }
}

函式库参考主页面

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.