display full responses on vote/submit 403

This commit is contained in:
caneleex 2022-01-24 15:14:56 +01:00
parent 6a08ef6742
commit 39da904867
3 changed files with 11 additions and 6 deletions

View File

@ -21,12 +21,15 @@ public class Requester {
} }
public static String parseJson(HttpURLConnection connection) throws IOException { public static String parseJson(HttpURLConnection connection) throws IOException {
return parseJson(connection.getInputStream());
}
public static String parseJson(InputStream inputStream) throws IOException {
StringBuilder jsonBuilder = new StringBuilder(); StringBuilder jsonBuilder = new StringBuilder();
InputStream inputStream = connection.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream)); BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line; String line;
while ((line = reader.readLine()) != null) { while ((line = reader.readLine()) != null) {
jsonBuilder.append(line); jsonBuilder.append(line).append("\n");
} }
inputStream.close(); inputStream.close();
return jsonBuilder.toString(); return jsonBuilder.toString();

View File

@ -84,7 +84,7 @@ public class SBRequester {
SponsorBlockUtils.messageToToast = str("submit_failed_duplicate"); SponsorBlockUtils.messageToToast = str("submit_failed_duplicate");
break; break;
case 403: case 403:
SponsorBlockUtils.messageToToast = str("submit_failed_forbidden"); SponsorBlockUtils.messageToToast = str("submit_failed_forbidden", Requester.parseJson(connection.getErrorStream()));
break; break;
case 429: case 429:
SponsorBlockUtils.messageToToast = str("submit_failed_rate_limit"); SponsorBlockUtils.messageToToast = str("submit_failed_rate_limit");
@ -130,7 +130,7 @@ public class SBRequester {
SponsorBlockUtils.messageToToast = str("vote_succeeded"); SponsorBlockUtils.messageToToast = str("vote_succeeded");
break; break;
case 403: case 403:
SponsorBlockUtils.messageToToast = str("vote_failed_forbidden"); SponsorBlockUtils.messageToToast = str("vote_failed_forbidden", Requester.parseJson(connection.getErrorStream()));
break; break;
default: default:
SponsorBlockUtils.messageToToast = str("vote_failed_unknown_error", responseCode, connection.getResponseMessage()); SponsorBlockUtils.messageToToast = str("vote_failed_unknown_error", responseCode, connection.getResponseMessage());
@ -189,6 +189,8 @@ public class SBRequester {
}).start(); }).start();
} }
// helpers
private static HttpURLConnection getConnectionFromRoute(Route route, String... params) throws IOException { private static HttpURLConnection getConnectionFromRoute(Route route, String... params) throws IOException {
return Requester.getConnectionFromRoute(SPONSORBLOCK_API_URL, route, params); return Requester.getConnectionFromRoute(SPONSORBLOCK_API_URL, route, params);
} }

View File

@ -193,14 +193,14 @@
<string name="submit_failed_unknown_error" formatted="false">Unable to submit segments: Status: %d %s</string> <string name="submit_failed_unknown_error" formatted="false">Unable to submit segments: Status: %d %s</string>
<string name="submit_failed_rate_limit">Can\'t submit the segment.\nRate Limited (Too many from the same user or IP)</string> <string name="submit_failed_rate_limit">Can\'t submit the segment.\nRate Limited (Too many from the same user or IP)</string>
<string name="submit_failed_forbidden">Can\'t submit the segment.\nRejected by auto moderator</string> <string name="submit_failed_forbidden" formatted="false">Can\'t submit the segment.\n\n%s</string>
<string name="submit_failed_duplicate">Can\'t submit the segment.\nAlready exists</string> <string name="submit_failed_duplicate">Can\'t submit the segment.\nAlready exists</string>
<string name="submit_succeeded">Segment submitted successfully</string> <string name="submit_succeeded">Segment submitted successfully</string>
<string name="submit_started">Submitting segment…</string> <string name="submit_started">Submitting segment…</string>
<string name="vote_failed_unknown_error" formatted="false">Unable to vote for segment: Status: %d %s</string> <string name="vote_failed_unknown_error" formatted="false">Unable to vote for segment: Status: %d %s</string>
<string name="vote_failed_rate_limit">Can\'t vote for segment.\nRate Limited (Too many from the same user or IP)</string> <string name="vote_failed_rate_limit">Can\'t vote for segment.\nRate Limited (Too many from the same user or IP)</string>
<string name="vote_failed_forbidden">Can\'t vote for segment.\nA moderator has decided that this segment is correct</string> <string name="vote_failed_forbidden" formatted="false">Can\'t vote for segment.\n\n%s</string>
<string name="vote_succeeded">Voted successfully</string> <string name="vote_succeeded">Voted successfully</string>
<string name="vote_started">Voting for segment…</string> <string name="vote_started">Voting for segment…</string>
<string name="vote_upvote">Upvote</string> <string name="vote_upvote">Upvote</string>