From 883d4bb80601fddd77a608888a952cb2b9f006a1 Mon Sep 17 00:00:00 2001 From: Corentin Leruth Date: Sat, 26 Aug 2023 07:45:27 +0200 Subject: [PATCH] remove trailing slash from url --- src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml | 9 ++++++++- src/client-ocurl/opentelemetry_client_ocurl.ml | 9 ++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml b/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml index 2320197c..9241e9c1 100644 --- a/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml +++ b/src/client-cohttp-lwt/opentelemetry_client_cohttp_lwt.ml @@ -93,7 +93,14 @@ end = struct (* send the content to the remote endpoint/path *) let send (_self : t) ~(config : Config.t) ~path ~decode (bod : string) : ('a, error) result Lwt.t = - let full_url = config.url ^ path in + let url = + let url = config.url in + if String.ends_with url ~suffix:"/" then + String.sub url 0 (String.length url - 1) + else + url + in + let full_url = url ^ path in let uri = Uri.of_string full_url in let open Cohttp in diff --git a/src/client-ocurl/opentelemetry_client_ocurl.ml b/src/client-ocurl/opentelemetry_client_ocurl.ml index 69534fce..f8c08e4c 100644 --- a/src/client-ocurl/opentelemetry_client_ocurl.ml +++ b/src/client-ocurl/opentelemetry_client_ocurl.ml @@ -123,7 +123,14 @@ end = struct Pbrt.Encoder.reset encoder; encode x encoder; let data = Pbrt.Encoder.to_string encoder in - let url = config.Config.url ^ path in + let url = + let url = config.Config.url in + if String.ends_with url ~suffix:"/" then + String.sub url 0 (String.length url - 1) + else + url + in + let url = url ^ path in if !debug_ || config.debug then Printf.eprintf "opentelemetry: send http POST to %s (%dB)\n%!" url (String.length data);