System Information
Hello,
in Strapi v4.7.x I could display a custom error message in the Admin UI by throwing an ApplicationError:
throw new utils.errors.ApplicationError(`Custom error message`);
In Strapi v4.8.2 this doesn’t work anymore. The above code results in a generic error message (e.g. “Warning: Request failed with status code 400”).
In the response I can still see the custom error message:
error: {
status: 400
name: "ApplicationError"
message: "Custom error message"
details: { ... }
}
How can I display this custom error message in Strapi v4.8.?
Thank and best regards
1 Like
Problem is here again. Just upgraded to latest Strapi v4.10.6.
package.json
"@strapi/strapi": "4.10.6",
"@strapi/plugin-users-permissions": "4.10.6",
"@strapi/provider-email-sendgrid": "4.10.6",
"@strapi/provider-upload-cloudinary": "4.10.6"
Code:
throw new utils.errors.ApplicationError("Custom error message");
Network shows:
{
"data":null,
"error":{
"status":400,
"name":"ApplicationError",
"message":"Custom error message",
"details":{}
}
}
But UI shows: “Warning: Request failed with status code 400” 🥲
@Mehoff are you able to fix this error?
I got the solution-
just install the @strapi /utils package and then its working fine
@Abhinegi2
I just tried it with v4.11.1 after installing @strapi /utils package but it is not working for me. In the Admin UI it shows internal server error.
I’m on v4.13.1 and its still not working. Would be happy if this gets fixed. @DMehaffy any news on that maybe?
1 Like
I’m on version 4.11.1 and it is still not working for me.
"@strapi/plugin-i18n": "^4.11.1",
"@strapi/plugin-users-permissions": "^4.11.1",
"@strapi/strapi": "^4.11.1",
"@strapi/utils": "^4.11.1",
jangxx
January 19, 2024, 11:28am
9
I set up a new project yesterday on v4.17.1 and it doesn’t seem to display any errors in the Admin UI at all, no matter what I throw. They all just get silently ignored.
i am using strapi 4.15 and below code works for me and even if we mention filed name in path key it also highlight field in admin ui form
const { errors } = require("@strapi/utils");
const { ApplicationError } = errors;
throw new ApplicationError("Title already exist", {
errors: [
{
path: ["title"],
message: "This attribute must be unique",
name: "ValidationError",
},
],
});
2 Likes
Aluxe
March 21, 2024, 1:45pm
11
Hope it hepls someone)
module.exports = {
beforeCreate: async (event) => {
console.log(event);
const ctx = strapi.requestContext.get();
ctx.throw(400, {
details: {
errors: [
{
path: ["slug"],
message: "This attribute must be unique",
name: "ValidationError",
},
],
},
message: "This attribute must be unique",
name: "ValidationError"
});
return ctx;
},
beforeUpdate: async (event) => {
},
};
@jangxx @Tirth_Work @0x273464
3 Likes
goteii
March 26, 2024, 10:27am
12
This one actually works flawlessly in my case (strapi 4.15.5).
Thank you a lot