diff --git a/examples/protocols/esp_http_client/main/Kconfig.projbuild b/examples/protocols/esp_http_client/main/Kconfig.projbuild new file mode 100644 index 0000000000..8523967e9c --- /dev/null +++ b/examples/protocols/esp_http_client/main/Kconfig.projbuild @@ -0,0 +1,7 @@ +menu "Example Configuration" + config EXAMPLE_HTTP_ENDPOINT + string "Example HTTP Endpoint" + default "httpbin.org" + help + Target endpoint host-name for the example to use. +endmenu diff --git a/examples/protocols/esp_http_client/main/esp_http_client_example.c b/examples/protocols/esp_http_client/main/esp_http_client_example.c index a24724a089..fcdcd330ab 100644 --- a/examples/protocols/esp_http_client/main/esp_http_client_example.c +++ b/examples/protocols/esp_http_client/main/esp_http_client_example.c @@ -44,7 +44,6 @@ extern const char howsmyssl_com_root_cert_pem_end[] asm("_binary_howsmyssl_com extern const char postman_root_cert_pem_start[] asm("_binary_postman_root_cert_pem_start"); extern const char postman_root_cert_pem_end[] asm("_binary_postman_root_cert_pem_end"); - 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 @@ -132,7 +131,7 @@ static void http_rest_with_url(void) * If URL as well as host and path parameters are specified, values of host and path will be considered. */ esp_http_client_config_t config = { - .host = "httpbin.org", + .host = CONFIG_EXAMPLE_HTTP_ENDPOINT, .path = "/get", .query = "esp", .event_handler = _http_event_handler, @@ -154,7 +153,7 @@ static void http_rest_with_url(void) // POST const char *post_data = "{\"field1\":\"value1\"}"; - esp_http_client_set_url(client, "http://httpbin.org/post"); + esp_http_client_set_url(client, "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/post"); esp_http_client_set_method(client, HTTP_METHOD_POST); esp_http_client_set_header(client, "Content-Type", "application/json"); esp_http_client_set_post_field(client, post_data, strlen(post_data)); @@ -168,7 +167,7 @@ static void http_rest_with_url(void) } //PUT - esp_http_client_set_url(client, "http://httpbin.org/put"); + esp_http_client_set_url(client, "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/put"); esp_http_client_set_method(client, HTTP_METHOD_PUT); err = esp_http_client_perform(client); if (err == ESP_OK) { @@ -180,7 +179,7 @@ static void http_rest_with_url(void) } //PATCH - esp_http_client_set_url(client, "http://httpbin.org/patch"); + esp_http_client_set_url(client, "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/patch"); esp_http_client_set_method(client, HTTP_METHOD_PATCH); esp_http_client_set_post_field(client, NULL, 0); err = esp_http_client_perform(client); @@ -193,7 +192,7 @@ static void http_rest_with_url(void) } //DELETE - esp_http_client_set_url(client, "http://httpbin.org/delete"); + esp_http_client_set_url(client, "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/delete"); esp_http_client_set_method(client, HTTP_METHOD_DELETE); err = esp_http_client_perform(client); if (err == ESP_OK) { @@ -205,7 +204,7 @@ static void http_rest_with_url(void) } //HEAD - esp_http_client_set_url(client, "http://httpbin.org/get"); + esp_http_client_set_url(client, "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/get"); esp_http_client_set_method(client, HTTP_METHOD_HEAD); err = esp_http_client_perform(client); if (err == ESP_OK) { @@ -222,7 +221,7 @@ static void http_rest_with_url(void) static void http_rest_with_hostname_path(void) { esp_http_client_config_t config = { - .host = "httpbin.org", + .host = CONFIG_EXAMPLE_HTTP_ENDPOINT, .path = "/get", .transport_type = HTTP_TRANSPORT_OVER_TCP, .event_handler = _http_event_handler, @@ -316,7 +315,7 @@ static void http_auth_basic(void) * To disable authorization retries, set max_authorization_retries to -1. */ esp_http_client_config_t config = { - .url = "http://user:passwd@httpbin.org/basic-auth/user/passwd", + .url = "http://user:passwd@"CONFIG_EXAMPLE_HTTP_ENDPOINT"/basic-auth/user/passwd", .event_handler = _http_event_handler, .auth_type = HTTP_AUTH_TYPE_BASIC, .max_authorization_retries = -1, @@ -337,7 +336,7 @@ static void http_auth_basic(void) static void http_auth_basic_redirect(void) { esp_http_client_config_t config = { - .url = "http://user:passwd@httpbin.org/basic-auth/user/passwd", + .url = "http://user:passwd@"CONFIG_EXAMPLE_HTTP_ENDPOINT"/basic-auth/user/passwd", .event_handler = _http_event_handler, }; esp_http_client_handle_t client = esp_http_client_init(&config); @@ -358,7 +357,7 @@ static void http_auth_basic_redirect(void) static void http_auth_digest(void) { esp_http_client_config_t config = { - .url = "http://user:passwd@httpbin.org/digest-auth/auth/user/passwd/MD5/never", + .url = "http://user:passwd@"CONFIG_EXAMPLE_HTTP_ENDPOINT"/digest-auth/auth/user/passwd/MD5/never", .event_handler = _http_event_handler, }; esp_http_client_handle_t client = esp_http_client_init(&config); @@ -422,7 +421,7 @@ static void https_with_hostname_path(void) static void http_relative_redirect(void) { esp_http_client_config_t config = { - .url = "http://httpbin.org/relative-redirect/3", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/relative-redirect/3", .event_handler = _http_event_handler, }; esp_http_client_handle_t client = esp_http_client_init(&config); @@ -441,7 +440,7 @@ static void http_relative_redirect(void) static void http_absolute_redirect(void) { esp_http_client_config_t config = { - .url = "http://httpbin.org/absolute-redirect/3", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/absolute-redirect/3", .event_handler = _http_event_handler, }; esp_http_client_handle_t client = esp_http_client_init(&config); @@ -460,7 +459,7 @@ static void http_absolute_redirect(void) static void http_absolute_redirect_manual(void) { esp_http_client_config_t config = { - .url = "http://httpbin.org/absolute-redirect/3", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/absolute-redirect/3", .event_handler = _http_event_handler, .disable_auto_redirect = true, }; @@ -480,7 +479,7 @@ static void http_absolute_redirect_manual(void) static void http_redirect_to_https(void) { esp_http_client_config_t config = { - .url = "http://httpbin.org/redirect-to?url=https%3A%2F%2Fwww.howsmyssl.com", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/redirect-to?url=https://www.howsmyssl.com", .event_handler = _http_event_handler, .cert_pem = howsmyssl_com_root_cert_pem_start, }; @@ -501,7 +500,7 @@ static void http_redirect_to_https(void) static void http_download_chunk(void) { esp_http_client_config_t config = { - .url = "http://httpbin.org/stream-bytes/8912", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/stream-bytes/8912", .event_handler = _http_event_handler, }; esp_http_client_handle_t client = esp_http_client_init(&config); @@ -525,7 +524,7 @@ static void http_perform_as_stream_reader(void) return; } esp_http_client_config_t config = { - .url = "http://httpbin.org/get", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/get", }; esp_http_client_handle_t client = esp_http_client_init(&config); esp_err_t err; @@ -615,7 +614,7 @@ static void http_native_request(void) char output_buffer[MAX_HTTP_OUTPUT_BUFFER] = {0}; // Buffer to store response of http request int content_length = 0; esp_http_client_config_t config = { - .url = "http://httpbin.org/get", + .url = "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/get", }; esp_http_client_handle_t client = esp_http_client_init(&config); @@ -644,7 +643,7 @@ static void http_native_request(void) // POST Request const char *post_data = "{\"field1\":\"value1\"}"; - esp_http_client_set_url(client, "http://httpbin.org/post"); + esp_http_client_set_url(client, "http://"CONFIG_EXAMPLE_HTTP_ENDPOINT"/post"); esp_http_client_set_method(client, HTTP_METHOD_POST); esp_http_client_set_header(client, "Content-Type", "application/json"); err = esp_http_client_open(client, strlen(post_data)); diff --git a/examples/protocols/esp_http_client/sdkconfig.ci b/examples/protocols/esp_http_client/sdkconfig.ci index 18d318212a..9d5eb3ec90 100644 --- a/examples/protocols/esp_http_client/sdkconfig.ci +++ b/examples/protocols/esp_http_client/sdkconfig.ci @@ -9,3 +9,4 @@ CONFIG_EXAMPLE_ETH_PHY_ADDR=1 CONFIG_EXAMPLE_CONNECT_IPV6=y CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH=y +CONFIG_EXAMPLE_HTTP_ENDPOINT="httpbin.espressif.cn" diff --git a/examples/protocols/esp_http_client/sdkconfig.ci.ssldyn b/examples/protocols/esp_http_client/sdkconfig.ci.ssldyn index d25890eb1c..3ad04ee8a0 100644 --- a/examples/protocols/esp_http_client/sdkconfig.ci.ssldyn +++ b/examples/protocols/esp_http_client/sdkconfig.ci.ssldyn @@ -11,3 +11,4 @@ CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH=y CONFIG_MBEDTLS_DYNAMIC_BUFFER=y CONFIG_MBEDTLS_DYNAMIC_FREE_PEER_CERT=y CONFIG_MBEDTLS_DYNAMIC_FREE_CONFIG_DATA=y +CONFIG_EXAMPLE_HTTP_ENDPOINT="httpbin.espressif.cn"