아두이노 - HTTPS 요청 | Arduino - HTTPS Request
아두이노는 웹 서버에 HTTPS 요청을 만들기 위해 웹 클라이언트 역할을 할 수 있습니다. 웹 서버는 웹사이트, 웹 API 또는 REST API, 웹 서비스 등이 될 수 있습니다.
HTTP 대 HTTPS
웹 클라이언트의 관점에서 보면, HTTPS는 데이터를 클라이언트와 서버 간에 암호화한다는 점을 제외하고는 HTTP와 같습니다. 이로 인해 HTTPS는 안전합니다.
따라서 HTTPS에 대해 배우려면 먼저 HTTP에 대해 배우고 그 다음 데이터를 암호화하는 방법을 배워야 합니다.
Learn about HTTP: HTTP에 대해 배우기
- Arduino - HTTP Request 튜토리얼을 확인하세요
HTTPS에서 데이터를 암호화하는 방법을 배우세요
다행히 HTTP 코드를 HTTPS 코드로 변경하는 것은 쉽습니다. 보드/쉴드에 따라 한 줄의 코드만 변경하면 됩니다. HTTP 코드에서 아래 표에 명시된 코드 줄을 찾아 해당 HTTPS 코드로 교체하십시오.
Board/Shield | HTTP Code | HTTPS Code |
---|---|---|
Arduino UNO R4 WiFi | WiFiClient client; | WiFiSSLClient client; |
Arduino UNO WIFI Rev2 | client.connect(server, 80) | client.connectSSL(server, 443) |
ARDUINO NANO 33 IOT | client.connect(server, 80) | client.connectSSL(server, 443) |
ARDUINO MKR WIFI 1010 | client.connect(server, 80) | client.connectSSL(server, 443) |
ARDUINO MKR1000 WIFI | client.connect(server, 80) | client.connectSSL(server, 443) |
Arduino MKR VIDOR 4000 WiFi | client.connect(server, 80) | client.connectSSL(server, 443) |
※ NOTE THAT:
몇몇 보드/실드에서 WiFiSSLClient 클래스를 지원하는 라이브러리가 있다면, HTTP 코드를 HTTPS 코드로 변경하는 또 하나의 방법이 있습니다. WiFiClient를 WiFiSSLClient로 대체하고 포트 80을 443으로 변경하는 것만으로 가능합니다.
- Arduino Ethernet Shield 2는 HTTPS를 지원하지 않습니다.
- 이 튜토리얼에서는 코드를 보여주지 않습니다. 그 이유는 Arduino - HTTP request에서 HTTP 코드를 가져와 위의 지시에 따라 수정하기만 하면 되기 때문입니다. HTTP 코드를 수정함으로써, Arduino를 통해 HTTPS POST/GET으로 데이터를 보내거나 웹 서버로 부터 데이터를 보낼 수 있습니다.