5. Using API that Requires Basic Authentication
Basic authentication is required for APIs which are explained in Section 6. This section provides general explanation of those APIs.
5.1. Procedure
1)The client establishes a TCP connection to port number 80.
2)The client sends API.
API has following structure.
GET | space | API Characters | space |
| HTTP/1.1 | 0x0D 0x0A |
| ||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Accept: |
| space |
| text/plain (or text/html) |
| 0x0D 0x0A |
| ||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Host: | space | IP Address of | 0x0D 0x0A |
|
|
|
|
| |||||
|
|
|
|
|
|
|
|
|
| ||||
Authorization: Basic |
| space | Encoded User Name and Password | 0x0D 0x0A 0x0D 0x0A | |||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The following is an example of API for Getting subnet mask of
Example
GET /api/param?network.interface.subnetmask HTTP/1.1<CRLF>
Accept: text/plain<CRLF>
Host: 192.168.0.2<CRLF>
Authorization: Basic YWRtaW46dm4tdjY4Ng==<CRLF><CRLF>
Specify the response format by Accept line. Plain text response is returned when this is specified as text/plain. HTML response is returned when text/html is specified. HTML response is returned when Accept is not specified.
These APIs for getting/setting parameters are protected by basic authentication. Authorization line needs to include encoded username and password. There are 3 types of usernames, namely admin, operator and user. Available APIs are different for each username. Join the user name and the password using a colon, Base64 encode this character string and enter this in the Authorization line.
For example, when User name admin Password
then the character string joining the user name and the password with a colon is:
Base64 encoding of this string yields YWRtaW46dm4tdjY4Ng==. Enter this in the Authorization line. Default password for each username is
15