public String getFullUrl() {
        if (StrUtils.isNotEmpty(fullUrl)) {
            return fullUrl;
        }
        return fullUrl = createFullUrl();
    }
@Test
    public void testFullUrlWithProtocol() {
        HttpRequest req0 = new HttpRequest.Builder()
                .url("http://localhost:8086/write")
                .params(MapUtils.of("k1", singletonList("v1")))
                .get()
                .build();
        Assert.assertEquals("http://localhost:8086/write?k1=v1", req0.getFullUrl());

        HttpRequest req1 = new HttpRequest.Builder()
                .url("http://localhost:8086/write?")
                .params(MapUtils.of("k1", singletonList("v1")))
                .get()
                .build();
        Assert.assertEquals("http://localhost:8086/write?k1=v1", req1.getFullUrl());

        HttpRequest req2 = new HttpRequest.Builder()
                .url("https://localhost:8086/write?k1=v1")
                .params(MapUtils.of("k2", singletonList("v2")))
                .post("abcd")
                .build();
        Assert.assertEquals("https://localhost:8086/write?k1=v1&k2=v2", req2.getFullUrl());
    }