Я пытался создать REST API для своего бота, используя Spark Framework, который мне лично очень нравится, и я бы не переключался, но когда я пытаюсь опубликовать кодированный GSON POJO, но он помещает вокруг него некоторый HTML, что делает его непревзойденным для других приложений. Вот результат в контрольном элементе: Spark Framework помещает HTML вокруг моего ответа
и то, что я хотел бы отправить, было только частью тега <pre>, как я и ожидал от своего кода.
Просто, чтобы сделать его немного более ясно, что им пытаются сделать, вот мой Спарк маршрут и POJO я превращаю в формате JSON:
get("/json", (req, res) -> {
long sinceStart = System.currentTimeMillis() - Launcher.getInstance().getStartTime();
sinceStart /= 1000;
long hours = sinceStart/3600;
sinceStart %= 3600;
long minutes = sinceStart/60;
sinceStart %= 60;
res.type("application/json");
return new JSONResponse(hours + ":" + minutes + ":" + sinceStart,
Launcher.getInstance().getDispatcher().getDispatchCount(),
Launcher.getInstance().getDispatcher().getCommands().size(),
Launcher.getInstance().getClient().getGuilds().size());
});
...
private static class JSONResponse {
private String time;
private int commands, servers;
private long dispatchCount;
JSONResponse(String time, long dispatch, int registered, int servers) {
this.time = time;
this.dispatchCount = dispatch;
this.commands = registered;
this.servers = servers;
}
public String getTime() {
return time;
}
public int getCommands() {
return commands;
}
public int getServers() {
return servers;
}
public long getDispatchCount() {
return dispatchCount;
}
@Override
public String toString(){
return Launcher.getInstance().getGson().toJson(this);
}
}
Вместо вашего 'JSONResponse' вы можете попробовать [ResponseTransformer] (http://sparkjava.com/documentation.html#response-transformer) – Cir0X
@ Cir0X В настоящее время я делаю это:' 'get ("/json ", «application/json», (req, res) -> {... same ...}, Launcher.getInstance(). getGson() :: toJson); '' Но он делает то же самое. Спасибо, что пытались мне помочь! – ArsenArsen
Каково это изображение? С каким инструментом вы это взяли? Я не думаю, что spark java завершает ваш вывод в html-элементе. Вы пытались получить доступ к вашему сервису с помощью curl? 'curl http: // localhost: 8080/json' и заменить на правильный хост и порт, на котором работает ваша служба. –