位置导航: ESP8266库 / ESP8266HTTPClient库 / 本页
说明
此函数用于设置ESP8266开发板在通过HTTP发送请求时,设置请求头中的Authorization部分。
语法
httpClient.setAuthorization(user,password)
参数
user: 设备进行访问的用户名请求头信息
password: 设备进行访问的密码请求头信息
返回值
无
示例程序
关于本函数的具体使用方法,请参考以下代码,尤其是代码中高亮的语句部分。
您将以下示例程序的WiFi连接信息修改后并且将本示例程序上传ESP8266开发板后,开发板随即会自动连接WiFi。WiFi连接成功后,ESP8266将会向www.example.com网站服务器发送HTTP请求并通过串口监视器将网站服务器响应信息通过串口监视器显示出来。
以下是本程序控制下,ESP8266发送的HTTP请求信息:
| 
					 1 2 3 4 5 6 7  | 
						GET / HTTP/1.1 Host: www.example.com User-Agent: ESP8266HTTPClient Connection: keep-alive Accept-Encoding: identity;q=1,chunked;q=0.1,*;q=0 Authorization: Basic VGFpY2hpTWFrZXI6MTIzNDU2Nzg= Content-Length: 0  | 
					
其中Authorization: Basic VGFpY2hpTWFrZXI6MTIzNDU2Nzg=部分即是通过以下程序中的httpClient.setUserAgent(“TaichiMaker”, "12345678");来实现的。(www.example.com网站不需要认证即可访问,此示例程序仅仅是为了演示如何使用setUserAgent。)
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90  | 
						/**********************************************************************   项目名称/Project          : 零基础入门学用物联网   程序名称/Program name     : HTTPClient_setReuse   团队/Team                : 太极创客团队 / Taichi-Maker (www.taichi-maker.com)   作者/Author              : Dapenson   日期/Date(YYYYMMDD)     : 20200325   程序目的/Purpose          :   此程序用于演示如何使用ESP8266来向www.example.com网站服务器发送HTTP请求并通过串口   监视器将网站服务器响应信息通过串口监视器显示出来。   程序使用了setUserAgent函数来将ESP8266发送的HTTP请求头中Authorization部分   的user信息设置为"TaichiMaker",password部分设置为"12345678"。   -----------------------------------------------------------------------   修订历史/Revision History     日期/Date    作者/Author      参考号/Ref    修订说明/Revision Description   20200411      CYNO朔           001        将请求URL改为www.example.com   -----------------------------------------------------------------------   本示例程序为太极创客团队制作的《零基础入门学用物联网》中示例程序。   该教程为对物联网开发感兴趣的朋友所设计和制作。如需了解更多该教程的信息,请参考以下网页:   http://www.taichi-maker.com/homepage/esp8266-nodemcu-iot/iot-c/esp8266-nodemcu-web-client/http-request/ ***********************************************************************/  #include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h> // 测试HTTP请求用的URL #define URL "http://www.example.com" // 设置wifi接入信息(请根据您的WiFi信息进行修改) const char* ssid = "taichimaker"; const char* password = "12345678"; void setup() {   //初始化串口设置   Serial.begin(9600);   //设置ESP8266工作模式为无线终端模式   WiFi.mode(WIFI_STA);   //开始连接wifi   WiFi.begin(ssid, password);   //等待WiFi连接,连接成功打印IP   while (WiFi.status() != WL_CONNECTED) {     delay(1000);     Serial.print(".");   }   Serial.println("");   Serial.println("WiFi Connected!"); } void loop() {   // 如果ESP8266连接WiFi则发送HTTP请求   if ((WiFi.status() == WL_CONNECTED)) {     esp8266Http();   }   delay(5000);   // 短暂等待 } // 发送HTTP请求并且将服务器响应通过串口输出 void esp8266Http(){   //创建 HTTPClient 对象   HTTPClient httpClient;   //配置请求地址。此处也可以不使用端口号和PATH而单纯的   httpClient.begin(URL);    Serial.print("URL: "); Serial.println(URL);   //设置请求头中的Authorization信息   httpClient.setAuthorization("TaichiMaker", "12345678");   //启动连接并发送HTTP请求   int httpCode = httpClient.GET();   Serial.print("Send GET request to URL: ");   Serial.println(URL);   //如果服务器响应OK则从服务器获取响应体信息并通过串口输出   //如果服务器不响应OK则将服务器响应状态码通过串口输出   if (httpCode == HTTP_CODE_OK) {     String responsePayload = httpClient.getString();     Serial.println("Server Response Payload: ");     Serial.println(responsePayload);   } else {     Serial.println("Server Respose Code:");     Serial.println(httpCode);   }   //关闭ESP8266与服务器连接   httpClient.end(); }  | 
					
相关内容
— begin – 设置请求URL
— setReuse – 设置请求头中的keep-alive
— setUserAgent – 设置请求头中的User-Agent
— addHeader – 请求头中添加自定义信息
— useHTTP10 – 设置http协议版本
位置导航: ESP8266库 / ESP8266HTTPClient库 / 本页