influxdata / influxdata/influxdb-java

Incorrect URLs formed if base URL contains a path segment

Ouverte
#268 4 commentaires 5 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
1.2k
Forks
469
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

(Tested with influxdb-java version 2.5)

We're using a HTTPS reverse proxy in front our influxdb instance.

The external URLs is `https://scala-ci.typesafe.com/influx/write`.

The URL actually generated by influxdb-java is `https://scala-ci.typesafe.com/write`.

I believe that changing `@POST("/write")` to `@POST("write")`, etc, in `InfluxDBService.java` would fix this, but haven't verified.

A workaround is to add an interceptor to fixup the URL.

```java
OkHttpClient.Builder client = new OkHttpClient.Builder();
client.addNetworkInterceptor(chain -> {
HttpUrl.Builder fixedUrl = chain.request().url().newBuilder().encodedPath("/influx/" + chain.request().url().encodedPath().replaceFirst("/influxdb", ""));
return chain.proceed(chain.request().newBuilder().url(fixedUrl.build()).build());
});
InfluxDB influxDB = InfluxDBFactory.connect("https://scala-ci.typesafe.com/influx/", user, password, client);
```

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par lire InfluxDBService.java et retracez la manière dont ses annotations d’endpoint se combinent avec une URL de base contenant /influx. Reproduisez la requête signalée vers https://scala-ci.typesafe.com/influx/ et vérifiez que les URL générées conservent le segment de chemin de base sans nécessiter le contournement de l’intercepteur.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
api
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
38/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.