說明
使用 SSL 協議連接到構造函數中指定的 IP 地址和端口。當服務器僅提供 HTTPS 連接時,需要方法 connectSSL。在使用此方法之前,需要將服務器使用的 SSL 證書加載到 Arduino WiFi 模塊中。這些板已經加載了證書,應該可以使用了。要更改或上傳新的 SSL 證書,您應該遵循將提供的程序。 connectSSL() 還支持在使用域名(例如:google.com)時進行 DNS 查找。
用法
client.connectSSL(ip, port)
client.connectSSL(URL, port)
參數
- ip:客戶端要連接的IP地址(4字節數組)
- URL:客戶端將連接的域名(字符串,例如:“arduino.cc”)
- 端口:客戶端將連接到的端口(int)
返回
如果連接成功則返回 true,否則返回 false。
示例
…
/*
Web client
This sketch connects to a website through a SSL connection
using a WiFi board.
This example is written for a network using WPA encryption. For
WEP or WPA, change the Wifi.begin() call accordingly.
Circuit:
* WiFiNINA supported board
created 13 July 2010
by dlf (Metodo2 srl)
modified 31 May 2012
by Tom Igoe
*/
#include <SPI.h>
#include <WiFiNINA.h>
char ssid[] = "yourNetwork"; // your network SSID (name)
char pass[] = "secretPassword"; // your network password (use for WPA, or use as key for WEP)
int keyIndex = 0; // your network key Index number (needed only for WEP)
int status = WL_IDLE_STATUS;
char server[] = "arduino.tips"; // name address for Arduino (using DNS)
// Initialize the Wifi client library
// with the IP address and port of the server
// that you want to connect to (port 80 is default for HTTP):
WiFiClient client;
void setup() {
//Initialize serial and wait for port to open:
Serial.begin(9600);
while (!Serial) {
; // wait for serial port to connect. Needed for Leonardo only
}
// attempt to connect to Wifi network:
while (status != WL_CONNECTED) {
Serial.print("Attempting to connect to SSID: ");
Serial.println(ssid);
// Connect to WPA/WPA2 network. Change this line if using open or WEP network:
status = WiFi.begin(ssid, pass);
// wait 10 seconds for connection:
delay(10000);
}
Serial.println("Connected to wifi");
Serial.println("\nStarting connection to server...");
// if you get a connection, report back via serial:
if (client.connectSSL(server, 443)) {
Serial.println("Connected to server");
// Make a HTTP request:
client.println("GET /asciilogo.txt HTTP/1.1");
client.println("Host: arduino.tips");
client.println("Connection: close");
client.println();
Serial.println("Request sent");
}
}
void loop() {
// if there are incoming bytes available
// from the server, read them and print them:
while (client.available()) {
char c = client.read();
Serial.write(c);
}
// if the server's disconnected, stop the client:
if (!client.connected()) {
Serial.println();
Serial.println("disconnecting from server.");
client.stop();
// do nothing forevermore:
while (true);
}
}
…
相關用法
- Arduino WiFiNINA - client.connected()用法及代碼示例
- Arduino WiFiNINA - client.connect()用法及代碼示例
- Arduino WiFiNINA - client.available()用法及代碼示例
- Arduino WiFiNINA - client.status()用法及代碼示例
- Arduino WiFiNINA - client.peek()用法及代碼示例
- Arduino WiFiNINA - WiFi.config()用法及代碼示例
- Arduino WiFiNINA - server.status()用法及代碼示例
- Arduino WiFiNINA - WiFi.encryptionType()用法及代碼示例
- Arduino WiFiNINA - WiFi.gatewayIP()用法及代碼示例
- Arduino WiFiNINA - WiFi.BSSID()用法及代碼示例
- Arduino WiFiNINA - WiFi.begin()用法及代碼示例
- Arduino WiFiNINA - WiFi.RSSI()用法及代碼示例
- Arduino WiFiNINA - WiFi.channel()用法及代碼示例
- Arduino WiFiNINA - WiFi.setTimeout()用法及代碼示例
- Arduino WiFiNINA - WiFi.scanNetworks()用法及代碼示例
- Arduino WiFiNINA - WiFiSSLClient用法及代碼示例
- Arduino WiFiNINA - server.peek()用法及代碼示例
- Arduino WiFiNINA - server.available()用法及代碼示例
- Arduino WiFiNINA - WiFi.localIP()用法及代碼示例
- Arduino WiFiNINA - WiFi.beginAP()用法及代碼示例
- Arduino WiFiNINA - WiFi.setHostname()用法及代碼示例
- Arduino WiFiNINA - server.write()用法及代碼示例
- Arduino WiFiNINA - server.begin()用法及代碼示例
- Arduino WiFiNINA - WiFi.hostByName()用法及代碼示例
- Arduino WiFiNINA - WiFi.firmwareVersion()用法及代碼示例
注:本文由純淨天空篩選整理自arduino.cc大神的英文原創作品 WiFiNINA - client.connectSSL()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。