mirror of
https://github.com/espressif/esp-idf.git
synced 2025-07-30 18:57:19 +02:00
Merge branch 'bugfix/http_client_ci_v4.3' into 'release/v4.3'
esp_http_client example: Use dl.espressif.com URL for performing request with Range header (v4.3) See merge request espressif/esp-idf!17317
This commit is contained in:
@ -34,6 +34,9 @@ def test_examples_protocol_esp_http_client(env, extra_data):
|
|||||||
# content-len for chunked encoding is typically -1, could be a positive length in some cases
|
# content-len for chunked encoding is typically -1, could be a positive length in some cases
|
||||||
dut1.expect(re.compile(r'HTTP Stream reader Status = 200, content_length = (\d)'))
|
dut1.expect(re.compile(r'HTTP Stream reader Status = 200, content_length = (\d)'))
|
||||||
dut1.expect(re.compile(r'Last esp error code: 0x8001'))
|
dut1.expect(re.compile(r'Last esp error code: 0x8001'))
|
||||||
|
dut1.expect(re.compile(r'HTTP Status = 206, content_length = (\d)'))
|
||||||
|
dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10'))
|
||||||
|
dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10'))
|
||||||
dut1.expect('Finish http example')
|
dut1.expect('Finish http example')
|
||||||
|
|
||||||
# test mbedtls dynamic resource
|
# test mbedtls dynamic resource
|
||||||
@ -60,6 +63,9 @@ def test_examples_protocol_esp_http_client(env, extra_data):
|
|||||||
# content-len for chunked encoding is typically -1, could be a positive length in some cases
|
# content-len for chunked encoding is typically -1, could be a positive length in some cases
|
||||||
dut1.expect(re.compile(r'HTTP Stream reader Status = 200, content_length = (\d)'))
|
dut1.expect(re.compile(r'HTTP Stream reader Status = 200, content_length = (\d)'))
|
||||||
dut1.expect(re.compile(r'Last esp error code: 0x8001'))
|
dut1.expect(re.compile(r'Last esp error code: 0x8001'))
|
||||||
|
dut1.expect(re.compile(r'HTTP Status = 206, content_length = (\d)'))
|
||||||
|
dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10'))
|
||||||
|
dut1.expect(re.compile(r'HTTP Status = 206, content_length = 10'))
|
||||||
dut1.expect('Finish http example')
|
dut1.expect('Finish http example')
|
||||||
|
|
||||||
|
|
||||||
|
@ -3,4 +3,5 @@
|
|||||||
# (If this was a component, we would set COMPONENT_EMBED_TXTFILES here.)
|
# (If this was a component, we would set COMPONENT_EMBED_TXTFILES here.)
|
||||||
idf_component_register(SRCS "esp_http_client_example.c"
|
idf_component_register(SRCS "esp_http_client_example.c"
|
||||||
INCLUDE_DIRS "."
|
INCLUDE_DIRS "."
|
||||||
EMBED_TXTFILES howsmyssl_com_root_cert.pem)
|
EMBED_TXTFILES howsmyssl_com_root_cert.pem
|
||||||
|
dl_espressif_com_root_cert.pem)
|
||||||
|
@ -5,4 +5,4 @@
|
|||||||
|
|
||||||
# embed files from the "certs" directory as binary data symbols
|
# embed files from the "certs" directory as binary data symbols
|
||||||
# in the app
|
# in the app
|
||||||
COMPONENT_EMBED_TXTFILES := howsmyssl_com_root_cert.pem
|
COMPONENT_EMBED_TXTFILES := howsmyssl_com_root_cert.pem dl_espressif_com_root_cert.pem
|
||||||
|
@ -0,0 +1,29 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIE6jCCA9KgAwIBAgIQCjUI1VwpKwF9+K1lwA/35DANBgkqhkiG9w0BAQsFADBh
|
||||||
|
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
|
||||||
|
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
|
||||||
|
QTAeFw0yMDA5MjQwMDAwMDBaFw0zMDA5MjMyMzU5NTlaME8xCzAJBgNVBAYTAlVT
|
||||||
|
MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxKTAnBgNVBAMTIERpZ2lDZXJ0IFRMUyBS
|
||||||
|
U0EgU0hBMjU2IDIwMjAgQ0ExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
|
||||||
|
AQEAwUuzZUdwvN1PWNvsnO3DZuUfMRNUrUpmRh8sCuxkB+Uu3Ny5CiDt3+PE0J6a
|
||||||
|
qXodgojlEVbbHp9YwlHnLDQNLtKS4VbL8Xlfs7uHyiUDe5pSQWYQYE9XE0nw6Ddn
|
||||||
|
g9/n00tnTCJRpt8OmRDtV1F0JuJ9x8piLhMbfyOIJVNvwTRYAIuE//i+p1hJInuW
|
||||||
|
raKImxW8oHzf6VGo1bDtN+I2tIJLYrVJmuzHZ9bjPvXj1hJeRPG/cUJ9WIQDgLGB
|
||||||
|
Afr5yjK7tI4nhyfFK3TUqNaX3sNk+crOU6JWvHgXjkkDKa77SU+kFbnO8lwZV21r
|
||||||
|
eacroicgE7XQPUDTITAHk+qZ9QIDAQABo4IBrjCCAaowHQYDVR0OBBYEFLdrouqo
|
||||||
|
qoSMeeq02g+YssWVdrn0MB8GA1UdIwQYMBaAFAPeUDVW0Uy7ZvCj4hsbw5eyPdFV
|
||||||
|
MA4GA1UdDwEB/wQEAwIBhjAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIw
|
||||||
|
EgYDVR0TAQH/BAgwBgEB/wIBADB2BggrBgEFBQcBAQRqMGgwJAYIKwYBBQUHMAGG
|
||||||
|
GGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBABggrBgEFBQcwAoY0aHR0cDovL2Nh
|
||||||
|
Y2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xvYmFsUm9vdENBLmNydDB7BgNV
|
||||||
|
HR8EdDByMDegNaAzhjFodHRwOi8vY3JsMy5kaWdpY2VydC5jb20vRGlnaUNlcnRH
|
||||||
|
bG9iYWxSb290Q0EuY3JsMDegNaAzhjFodHRwOi8vY3JsNC5kaWdpY2VydC5jb20v
|
||||||
|
RGlnaUNlcnRHbG9iYWxSb290Q0EuY3JsMDAGA1UdIAQpMCcwBwYFZ4EMAQEwCAYG
|
||||||
|
Z4EMAQIBMAgGBmeBDAECAjAIBgZngQwBAgMwDQYJKoZIhvcNAQELBQADggEBAHer
|
||||||
|
t3onPa679n/gWlbJhKrKW3EX3SJH/E6f7tDBpATho+vFScH90cnfjK+URSxGKqNj
|
||||||
|
OSD5nkoklEHIqdninFQFBstcHL4AGw+oWv8Zu2XHFq8hVt1hBcnpj5h232sb0HIM
|
||||||
|
ULkwKXq/YFkQZhM6LawVEWwtIwwCPgU7/uWhnOKK24fXSuhe50gG66sSmvKvhMNb
|
||||||
|
g0qZgYOrAKHKCjxMoiWJKiKnpPMzTFuMLhoClw+dj20tlQj7T9rxkTgl4ZxuYRiH
|
||||||
|
as6xuwAwapu3r9rxxZf+ingkquqTgLozZXq8oXfpf2kUCwA/d5KxTVtzhwoT0JzI
|
||||||
|
8ks5T1KESaZMkE4f97Q=
|
||||||
|
-----END CERTIFICATE-----
|
@ -38,6 +38,9 @@ static const char *TAG = "HTTP_CLIENT";
|
|||||||
extern const char howsmyssl_com_root_cert_pem_start[] asm("_binary_howsmyssl_com_root_cert_pem_start");
|
extern const char howsmyssl_com_root_cert_pem_start[] asm("_binary_howsmyssl_com_root_cert_pem_start");
|
||||||
extern const char howsmyssl_com_root_cert_pem_end[] asm("_binary_howsmyssl_com_root_cert_pem_end");
|
extern const char howsmyssl_com_root_cert_pem_end[] asm("_binary_howsmyssl_com_root_cert_pem_end");
|
||||||
|
|
||||||
|
extern const char dl_espressif_com_root_cert_pem_start[] asm("_binary_dl_espressif_com_root_cert_pem_start");
|
||||||
|
extern const char dl_espressif_com_root_cert_pem_end[] asm("_binary_dl_espressif_com_root_cert_pem_end");
|
||||||
|
|
||||||
esp_err_t _http_event_handler(esp_http_client_event_t *evt)
|
esp_err_t _http_event_handler(esp_http_client_event_t *evt)
|
||||||
{
|
{
|
||||||
static char *output_buffer; // Buffer to store response of http request from event handler
|
static char *output_buffer; // Buffer to store response of http request from event handler
|
||||||
@ -632,8 +635,9 @@ static void http_native_request(void)
|
|||||||
static void http_partial_download(void)
|
static void http_partial_download(void)
|
||||||
{
|
{
|
||||||
esp_http_client_config_t config = {
|
esp_http_client_config_t config = {
|
||||||
.url = "http://jigsaw.w3.org/HTTP/TE/foo.txt",
|
.url = "https://dl.espressif.com/dl/esp-idf/ci/esp_http_client_demo.txt",
|
||||||
.event_handler = _http_event_handler,
|
.event_handler = _http_event_handler,
|
||||||
|
.cert_pem = dl_espressif_com_root_cert_pem_start,
|
||||||
};
|
};
|
||||||
esp_http_client_handle_t client = esp_http_client_init(&config);
|
esp_http_client_handle_t client = esp_http_client_init(&config);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user