fix(api): DELETE success wrongly returned code 200

This commit is contained in:
JimMoen 2021-11-10 14:37:45 +08:00
parent 59e6b6ee5b
commit 106aa559e0
13 changed files with 26 additions and 26 deletions

View File

@ -186,7 +186,7 @@ schema("/authentication/:id") ->
description => <<"Delete authenticator from global authentication chain">>,
parameters => [{id, mk(binary(), #{in => path, desc => <<"Authenticator ID">>})}],
responses => #{
200 => <<"Authenticator deleted">>,
204 => <<"Authenticator deleted">>,
404 => error_codes([?NOT_FOUND], <<"Not Found">>)
}
}

View File

@ -148,7 +148,7 @@ schema("/authorization/sources/built-in-database/username/:username") ->
description => <<"Delete one record for username">>,
parameters => [hoconsc:ref(username)],
responses => #{
204 => <<"No Content">>,
204 => <<"Deleted">>,
400 => emqx_dashboard_swagger:error_codes([?BAD_REQUEST], <<"Bad username">>)
}
}
@ -183,7 +183,7 @@ schema("/authorization/sources/built-in-database/clientid/:clientid") ->
description => <<"Delete one record for clientid">>,
parameters => [hoconsc:ref(clientid)],
responses => #{
204 => <<"No Content">>,
204 => <<"Deleted">>,
400 => emqx_dashboard_swagger:error_codes([?BAD_REQUEST], <<"Bad clientid">>)
}
}
@ -216,7 +216,7 @@ schema("/authorization/sources/built-in-database/purge-all") ->
tags => [<<"authorization">>],
description => <<"Purge all records">>,
responses => #{
204 => <<"No Content">>,
204 => <<"Deleted">>,
400 => emqx_dashboard_swagger:error_codes([?BAD_REQUEST], <<"Bad Request">>)
}
}

View File

@ -250,7 +250,7 @@ source_api() ->
}
],
responses => #{
<<"204">> => #{description => <<"No Content">>},
<<"204">> => #{description => <<"Deleted">>},
<<"400">> => emqx_mgmt_util:bad_request()
}
}

View File

@ -104,7 +104,7 @@ crud_bridges_apis() ->
description => <<"Delete a bridge">>,
parameters => [param_path_id()],
responses => #{
<<"200">> => emqx_mgmt_util:schema(<<"Bridge deleted">>),
<<"204">> => emqx_mgmt_util:schema(<<"Bridge deleted">>),
<<"404">> => emqx_mgmt_util:error_schema(<<"Bridge not found">>, ['NOT_FOUND'])
}
}

View File

@ -131,7 +131,7 @@ schema("/users/:username") ->
parameters => [{username, mk(binary(),
#{in => path, example => <<"admin">>})}],
responses => #{
200 => <<"Delete User successfully">>,
204 => <<"Delete User successfully">>,
400 => [
{code, mk(string(), #{example => 'CANNOT_DELETE_ADMIN'})},
{message, mk(string(), #{example => "CANNOT DELETE ADMIN"})}]}}
@ -220,7 +220,7 @@ user(delete, #{bindings := #{username := Username}}) ->
message => <<"Cannot delete admin">>}};
false ->
_ = emqx_dashboard_admin:remove_user(Username),
{200}
{204}
end.
change_pwd(put, #{bindings := #{username := Username}, body := Params}) ->

View File

@ -56,7 +56,7 @@ schema("/alarms") ->
delete => #{
description => <<"Remove all deactivated alarms">>,
responses => #{
200 => <<"Remove all deactivated alarms ok">>
204 => <<"Remove all deactivated alarms ok">>
}
}
}.
@ -94,7 +94,7 @@ alarms(get, #{query_string := Qs}) ->
alarms(delete, _Params) ->
_ = emqx_mgmt:delete_all_deactivated_alarms(),
{200}.
{204}.
%%%==============================================================================================
%% internal

View File

@ -82,7 +82,7 @@ schema("/banned/:as/:who") ->
example => <<"Badass">>})}
],
responses => #{
200 => <<"Delete banned success">>,
204 => <<"Delete banned success">>,
404 => emqx_dashboard_swagger:error_codes(['RESOURCE_NOT_FOUND'],
<<"Banned not found">>)
}
@ -146,7 +146,7 @@ delete_banned(delete, #{bindings := Params}) ->
{404, #{code => 'RESOURCE_NOT_FOUND', message => Message}};
_ ->
ok = emqx_banned:delete(Params),
{200}
{204}
end.
format(Banned) ->

View File

@ -342,7 +342,7 @@ client_api() ->
}],
responses => #{
<<"404">> => emqx_mgmt_util:error_schema(<<"Client id not found">>),
<<"200">> => emqx_mgmt_util:schema(client, <<"List clients 200 OK">>)}}},
<<"204">> => emqx_mgmt_util:schema(<<"Kick out client successfully">>)}}},
{"/clients/:clientid", Metadata, client}.
clients_authz_cache_api() ->
@ -368,7 +368,7 @@ clients_authz_cache_api() ->
}],
responses => #{
<<"404">> => emqx_mgmt_util:error_schema(<<"Client id not found">>),
<<"200">> => emqx_mgmt_util:schema(<<"Delete clients 200 OK">>)}}},
<<"204">> => emqx_mgmt_util:schema(<<"Clean client authz cache successfully">>)}}},
{"/clients/:clientid/authz_cache", Metadata, authz_cache}.
clients_subscriptions_api() ->
@ -506,7 +506,7 @@ lookup(#{clientid := ClientID}) ->
kickout(#{clientid := ClientID}) ->
emqx_mgmt:kickout_client(ClientID),
{200}.
{204}.
get_authz_cache(#{clientid := ClientID})->
case emqx_mgmt:list_authz_cache(ClientID) of

View File

@ -110,7 +110,7 @@ api_list_update_listeners_by_id() ->
responses => #{
<<"404">> =>
emqx_mgmt_util:error_schema(?LISTENER_NOT_FOUND, ['BAD_LISTENER_ID']),
<<"200">> =>
<<"204">> =>
emqx_mgmt_util:schema(<<"Delete listener successfully">>)}}
},
{"/listeners/:id", Metadata, crud_listeners_by_id}.
@ -160,7 +160,7 @@ api_get_update_listener_by_id_on_node() ->
responses => #{
<<"404">> =>
emqx_mgmt_util:error_schema(?LISTENER_NOT_FOUND, ['BAD_LISTENER_ID']),
<<"200">> =>
<<"204">> =>
emqx_mgmt_util:schema(<<"Delete listener successfully">>)}}
},
{"/nodes/:node/listeners/:id", Metadata, crud_listener_by_id_on_node}.
@ -251,7 +251,7 @@ crud_listeners_by_id(put, #{bindings := #{id := Id}, body := Conf}) ->
crud_listeners_by_id(delete, #{bindings := #{id := Id}}) ->
Results = emqx_mgmt:remove_listener(Id),
case lists:filter(fun filter_errors/1, Results) of
[] -> {200};
[] -> {204};
Errors -> {500, #{code => 'UNKNOW_ERROR', message => err_msg(Errors)}}
end.
@ -291,7 +291,7 @@ crud_listener_by_id_on_node(put, #{bindings := #{id := Id, node := Node}, body :
end;
crud_listener_by_id_on_node(delete, #{bindings := #{id := Id, node := Node}}) ->
case emqx_mgmt:remove_listener(atom(Node), Id) of
ok -> {200};
ok -> {204};
{error, Reason} -> {500, #{code => 'UNKNOW_ERROR', message => err_msg(Reason)}}
end.

View File

@ -90,7 +90,7 @@ schema("/mqtt/delayed/messages/:msgid") ->
description => <<"Delete delayed message">>,
parameters => [{msgid, mk(binary(), #{in => path, desc => <<"delay message ID">>})}],
responses => #{
200 => <<"Delete delayed message success">>,
204 => <<"Delete delayed message success">>,
400 => emqx_dashboard_swagger:error_codes([?MESSAGE_ID_SCHEMA_ERROR], <<"Bad MsgId format">>),
404 => emqx_dashboard_swagger:error_codes([?MESSAGE_ID_NOT_FOUND], <<"MsgId not found">>)
}
@ -166,7 +166,7 @@ delayed_message(delete, #{bindings := #{msgid := Id}}) ->
case emqx_delayed:get_delayed_message(Id) of
{ok, _Message} ->
_ = emqx_delayed:delete_delayed_message(Id),
{200};
{204};
{error, id_schema_error} ->
{400, generate_http_code_map(id_schema_error, Id)};
{error, not_found} ->

View File

@ -115,7 +115,7 @@ operation_topic_metrics_api() ->
description => <<"Deregister topic metrics">>,
parameters => [topic_param()],
responses => #{
<<"200">> => schema(<<"Deregister topic metrics">>),
<<"204">> => schema(<<"Deregister topic metrics">>),
<<"404">> => error_schema(<<"Topic not found">>, [?ERROR_TOPIC])
}
}

View File

@ -88,7 +88,7 @@ with_topic_api() ->
description => <<"delete matching messages">>,
parameters => parameters(),
responses => #{
<<"200">> => schema(<<"Successed">>),
<<"204">> => schema(<<"Successed">>),
<<"405">> => schema(<<"NotAllowed">>)
}
}
@ -147,7 +147,7 @@ with_topic(get, #{bindings := Bindings} = Params) ->
with_topic(delete, #{bindings := Bindings}) ->
Topic = maps:get(topic, Bindings),
emqx_retainer_mnesia:delete_message(undefined, Topic),
{200}.
{204}.
-spec lookup(undefined | binary(),
map(),

View File

@ -104,7 +104,7 @@ api_rules_crud() ->
description => <<"Delete a rule by given Id from all nodes in the cluster">>,
parameters => [param_path_id()],
responses => #{
<<"200">> =>
<<"204">> =>
emqx_mgmt_util:schema(<<"Delete rule successfully">>)}}
},
{"/rules/:id", Metadata, crud_rules_by_id}.
@ -291,7 +291,7 @@ crud_rules_by_id(put, #{bindings := #{id := Id}, body := Params}) ->
crud_rules_by_id(delete, #{bindings := #{id := Id}}) ->
ConfPath = emqx_rule_engine:config_key_path() ++ [Id],
case emqx:remove_config(ConfPath, #{}) of
{ok, _} -> {200};
{ok, _} -> {204};
{error, Reason} ->
?SLOG(error, #{msg => "delete_rule_failed",
id => Id, reason => Reason}),