add try-catch to JSON deserialization
This commit is contained in:
parent
e19401fb9b
commit
f3f8828ec0
1 changed files with 136 additions and 9 deletions
|
@ -38,7 +38,22 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<SendResetEmailPayload>();
|
|
||||||
|
SendResetEmailPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<SendResetEmailPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new SendResetEmailResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.email) || string.IsNullOrWhiteSpace(payload.username))
|
if (payload == null || string.IsNullOrWhiteSpace(payload.email) || string.IsNullOrWhiteSpace(payload.username))
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
@ -111,7 +126,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<ResetPasswordPayload>();
|
ResetPasswordPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<ResetPasswordPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new ResetPasswordResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.username) ||
|
if (payload == null || string.IsNullOrWhiteSpace(payload.username) ||
|
||||||
string.IsNullOrWhiteSpace(payload.email) || string.IsNullOrWhiteSpace(payload.code) ||
|
string.IsNullOrWhiteSpace(payload.email) || string.IsNullOrWhiteSpace(payload.code) ||
|
||||||
string.IsNullOrWhiteSpace(payload.newPassword))
|
string.IsNullOrWhiteSpace(payload.newPassword))
|
||||||
|
@ -185,7 +214,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<UpdatePayload>();
|
UpdatePayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<UpdatePayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new UpdateResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.token) ||
|
if (payload == null || string.IsNullOrWhiteSpace(payload.token) ||
|
||||||
string.IsNullOrWhiteSpace(payload.currentPassword) || (string.IsNullOrWhiteSpace(payload.newPassword) && string.IsNullOrWhiteSpace(payload.username) && string.IsNullOrWhiteSpace(payload.email)))
|
string.IsNullOrWhiteSpace(payload.currentPassword) || (string.IsNullOrWhiteSpace(payload.newPassword) && string.IsNullOrWhiteSpace(payload.username) && string.IsNullOrWhiteSpace(payload.email)))
|
||||||
{
|
{
|
||||||
|
@ -333,7 +376,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<LogoutPayload>();
|
LogoutPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<LogoutPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new LogoutResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.token))
|
if (payload == null || string.IsNullOrWhiteSpace(payload.token))
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
@ -373,7 +430,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<SessionPayload>();
|
SessionPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<SessionPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new SessionResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.token))
|
if (payload == null || string.IsNullOrWhiteSpace(payload.token))
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
@ -425,7 +496,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<JoinPayload>();
|
JoinPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<JoinPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new JoinResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.secretKey) || string.IsNullOrWhiteSpace(payload.sessionToken) || string.IsNullOrWhiteSpace(payload.ip))
|
if (payload == null || string.IsNullOrWhiteSpace(payload.secretKey) || string.IsNullOrWhiteSpace(payload.sessionToken) || string.IsNullOrWhiteSpace(payload.ip))
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
@ -522,7 +607,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<LoginPayload>();
|
LoginPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<LoginPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new LoginResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.username) || string.IsNullOrWhiteSpace(payload.password))
|
if (payload == null || string.IsNullOrWhiteSpace(payload.username) || string.IsNullOrWhiteSpace(payload.password))
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
@ -627,7 +726,21 @@ public static class Routes
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
|
|
||||||
var payload = await context.Request.ReadFromJsonAsync<VerifyPayload>();
|
VerifyPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<VerifyPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new VerifyResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.username) ||
|
if (payload == null || string.IsNullOrWhiteSpace(payload.username) ||
|
||||||
string.IsNullOrWhiteSpace(payload.password) || string.IsNullOrWhiteSpace(payload.password))
|
string.IsNullOrWhiteSpace(payload.password) || string.IsNullOrWhiteSpace(payload.password))
|
||||||
{
|
{
|
||||||
|
@ -705,7 +818,21 @@ public static class Routes
|
||||||
error = "Invalid request body"
|
error = "Invalid request body"
|
||||||
}, Utilities.JsonSerializerOptions);
|
}, Utilities.JsonSerializerOptions);
|
||||||
}
|
}
|
||||||
var payload = await context.Request.ReadFromJsonAsync<RegisterPayload>();
|
RegisterPayload? payload;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
payload = await context.Request.ReadFromJsonAsync<RegisterPayload>();
|
||||||
|
}
|
||||||
|
catch (JsonException ex)
|
||||||
|
{
|
||||||
|
Utilities.Log(LogLevel.DEBUG, $"Failed to parse JSON: {ex.Message}");
|
||||||
|
context.Response.StatusCode = 400;
|
||||||
|
return Results.Json(new RegisterResponse
|
||||||
|
{
|
||||||
|
success = false,
|
||||||
|
error = "Invalid request body"
|
||||||
|
}, Utilities.JsonSerializerOptions);
|
||||||
|
}
|
||||||
if (payload == null || string.IsNullOrWhiteSpace(payload.username) || string.IsNullOrWhiteSpace(payload.password) || string.IsNullOrWhiteSpace(payload.email) || string.IsNullOrWhiteSpace(payload.dateOfBirth))
|
if (payload == null || string.IsNullOrWhiteSpace(payload.username) || string.IsNullOrWhiteSpace(payload.password) || string.IsNullOrWhiteSpace(payload.email) || string.IsNullOrWhiteSpace(payload.dateOfBirth))
|
||||||
{
|
{
|
||||||
context.Response.StatusCode = 400;
|
context.Response.StatusCode = 400;
|
||||||
|
|
Loading…
Reference in a new issue