Fixed JSON as plaintext

This commit is contained in:
Steven Tracey 2023-12-20 09:56:47 -06:00
parent a604b1e3ec
commit decc0598b1
3 changed files with 26 additions and 16 deletions

View File

@ -5,20 +5,9 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="ceecbd3e-6a84-488d-ae73-a0b5b3f4010e" name="Changes" comment=""> <list default="true" id="ceecbd3e-6a84-488d-ae73-a0b5b3f4010e" name="Changes" comment="">
<change afterPath="$PROJECT_DIR$/.idea/compiler.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/gradle.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/tech/nevets/ngxinstaller/Server.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/tech/nevets/ngxinstaller/Server.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/jarRepositories.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/main/java/tech/nevets/ngxinstaller/TextStorage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/main/java/tech/nevets/ngxinstaller/TextStorage.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/misc.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/vcs.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change afterPath="$PROJECT_DIR$/build.gradle" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gradle/wrapper/gradle-wrapper.jar" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gradle/wrapper/gradle-wrapper.properties" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gradlew" afterDir="false" />
<change afterPath="$PROJECT_DIR$/gradlew.bat" afterDir="false" />
<change afterPath="$PROJECT_DIR$/settings.gradle" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/tech/nevets/ngxinstaller/Server.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/main/java/tech/nevets/ngxinstaller/TextStorage.java" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />
@ -159,7 +148,7 @@
<option name="number" value="Default" /> <option name="number" value="Default" />
<option name="presentableId" value="Default" /> <option name="presentableId" value="Default" />
<updated>1703015833777</updated> <updated>1703015833777</updated>
<workItem from="1703015834937" duration="5516000" /> <workItem from="1703015834937" duration="10569000" />
</task> </task>
<servers /> <servers />
</component> </component>

View File

@ -4,6 +4,8 @@ import com.google.gson.Gson;
import com.google.gson.GsonBuilder; import com.google.gson.GsonBuilder;
import com.google.gson.JsonObject; import com.google.gson.JsonObject;
import java.net.URLDecoder;
import java.nio.charset.StandardCharsets;
import java.util.Timer; import java.util.Timer;
import java.util.TimerTask; import java.util.TimerTask;
@ -21,6 +23,21 @@ public class Server {
get("/ngx/raw/*", (req, res) -> { get("/ngx/raw/*", (req, res) -> {
String id = req.splat()[0]; String id = req.splat()[0];
TextStorage ts = TextStorage.getPaste(id); TextStorage ts = TextStorage.getPaste(id);
res.type("text/plain");
if (ts == null) {
res.status(404);
return "Content Not Found!";
}
return URLDecoder.decode(ts.getText(), StandardCharsets.UTF_8);
});
get("/ngx/json/*", (req, res) -> {
String id = req.splat()[0];
TextStorage ts = TextStorage.getPaste(id);
res.type("application/json");
if (ts == null) {
res.status(404);
return "{\"error\":\"content not found\"}";
}
return GSON.toJson(ts); return GSON.toJson(ts);
}); });

View File

@ -23,6 +23,10 @@ public class TextStorage {
return this.id; return this.id;
} }
public String getText() {
return this.text;
}
public static TextStorage getPaste(String id) { public static TextStorage getPaste(String id) {
for (TextStorage ts : DB) { for (TextStorage ts : DB) {
if (ts.id.equals(id)) { if (ts.id.equals(id)) {
@ -33,7 +37,7 @@ public class TextStorage {
} }
public static TextStorage createPaste(String text) { public static TextStorage createPaste(String text) {
TextStorage ts = new TextStorage(generateId(), text, System.currentTimeMillis() + 3600000); TextStorage ts = new TextStorage(generateId(), text, System.currentTimeMillis() + 1800000);
DB.add(ts); DB.add(ts);
return ts; return ts;
} }