This is a quick example of a simple HTTP client program using the network-socket API that is provided as a part of mbed-os. The program brings up an underlying network interface, and uses it to perform an HTTP transaction over a TCPSocket.
README.md@39:6c688e7f0c05, 2018-03-20 (annotated)
- Committer:
- mbed_official
- Date:
- Tue Mar 20 10:00:03 2018 +0000
- Revision:
- 39:6c688e7f0c05
- Parent:
- 33:d470701728e6
- Child:
- 40:afef93b6d854
Updating mbed-os to mbed-os-5.7.7
.
Commit copied from https://github.com/ARMmbed/mbed-os-example-sockets
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mbed_official | 0:17bd84fc5087 | 1 | ### Getting started with the network-socket API ### |
mbed_official | 0:17bd84fc5087 | 2 | |
mbed_official | 0:17bd84fc5087 | 3 | This is a quick example of a simple HTTP client program using the |
mbed_official | 33:d470701728e6 | 4 | [network-socket API](https://os.mbed.com/docs/latest/reference/network-socket.html) that [Mbed OS](https://github.com/ARMmbed/mbed-os) provides. |
mbed_official | 0:17bd84fc5087 | 5 | |
mbed_official | 0:17bd84fc5087 | 6 | The program brings up an underlying network interface, and uses it to perform an HTTP |
mbed_official | 0:17bd84fc5087 | 7 | transaction over a TCPSocket. |
mbed_official | 0:17bd84fc5087 | 8 | |
mbed_official | 5:3e952c60d705 | 9 | **Note:** The current example is limited to the ethernet interface on supported devices. |
mbed_official | 5:3e952c60d705 | 10 | To use the example with a different interface, you will need to modify main.cpp and |
mbed_official | 5:3e952c60d705 | 11 | replace the EthernetInterface class with the appropriate interface. |
mbed_official | 0:17bd84fc5087 | 12 | |
mbed_official | 24:0449435e2ef2 | 13 | **Note:** The default serial port baud rate is 9600 bit/s. |
mbed_official | 24:0449435e2ef2 | 14 | |
mbed_official | 13:ed9e4aa00044 | 15 | ### Expected output ### |
mbed_official | 13:ed9e4aa00044 | 16 | |
mbed_official | 13:ed9e4aa00044 | 17 | ``` |
mbed_official | 13:ed9e4aa00044 | 18 | IP address: 10.118.14.45 |
mbed_official | 13:ed9e4aa00044 | 19 | Netmask: 255.255.252.0 |
mbed_official | 13:ed9e4aa00044 | 20 | Gateway: 10.118.12.1 |
mbed_official | 13:ed9e4aa00044 | 21 | sent 39 [GET / HTTP/1.1] |
mbed_official | 13:ed9e4aa00044 | 22 | recv 173 [HTTP/1.1 200 OK] |
mbed_official | 13:ed9e4aa00044 | 23 | External IP address: 217.140.111.135 |
mbed_official | 13:ed9e4aa00044 | 24 | Done |
mbed_official | 13:ed9e4aa00044 | 25 | ``` |
mbed_official | 13:ed9e4aa00044 | 26 | |
mbed_official | 0:17bd84fc5087 | 27 | ### Documentation ### |
mbed_official | 0:17bd84fc5087 | 28 | |
mbed_official | 12:2e7466eba9a3 | 29 | More information on the network-socket API can be found in the [mbed handbook](https://docs.mbed.com/docs/mbed-os-api-reference/en/latest/APIs/communication/network_sockets/). |
mbed_official | 33:d470701728e6 | 30 | |
mbed_official | 33:d470701728e6 | 31 | ## Troubleshooting |
mbed_official | 33:d470701728e6 | 32 | |
mbed_official | 33:d470701728e6 | 33 | If you have problems, you can review the [documentation](https://os.mbed.com/docs/latest/tutorials/debugging.html) for suggestions on what could be wrong and how to fix it. |