fix: users api path & params name
This commit is contained in:
parent
4e94858ccf
commit
324a036aa8
|
@ -97,6 +97,14 @@ users_api() ->
|
|||
responses => #{
|
||||
<<"200">> => response_array_schema(<<"">>, show_user)
|
||||
}
|
||||
},
|
||||
post => #{
|
||||
description => <<"Create dashboard users">>,
|
||||
'requestBody' => request_body_schema(create_user),
|
||||
responses => #{
|
||||
<<"200">> => response_schema(<<"Create Users successfully">>),
|
||||
<<"400">> => bad_request()
|
||||
}
|
||||
}
|
||||
},
|
||||
{"/users", Metadata, users}.
|
||||
|
@ -117,7 +125,7 @@ user_api() ->
|
|||
'requestBody' => request_body_schema(#{
|
||||
type => object,
|
||||
properties => #{
|
||||
tags => #{
|
||||
tag => #{
|
||||
type => string
|
||||
}
|
||||
}
|
||||
|
@ -126,15 +134,6 @@ user_api() ->
|
|||
<<"200">> => response_schema(<<"Update Users successfully">>),
|
||||
<<"400">> => bad_request()
|
||||
}
|
||||
},
|
||||
post => #{
|
||||
description => <<"Create dashboard users">>,
|
||||
parameters => [path_param_username()],
|
||||
'requestBody' => request_body_schema(create_user),
|
||||
responses => #{
|
||||
<<"200">> => response_schema(<<"Create Users successfully">>),
|
||||
<<"400">> => bad_request()
|
||||
}
|
||||
}
|
||||
},
|
||||
{"/users/:username", Metadata, user}.
|
||||
|
@ -161,7 +160,7 @@ change_pwd_api() ->
|
|||
}
|
||||
}
|
||||
},
|
||||
{"/change_pwd/:username", Metadata, change_pwd}.
|
||||
{"/users/:username/change_pwd", Metadata, change_pwd}.
|
||||
|
||||
path_param_username() ->
|
||||
#{
|
||||
|
@ -187,14 +186,32 @@ auth(post, Request) ->
|
|||
end.
|
||||
|
||||
users(get, _Request) ->
|
||||
{200, [row(User) || User <- emqx_dashboard_admin:all_users()]}.
|
||||
{200, [row(User) || User <- emqx_dashboard_admin:all_users()]};
|
||||
|
||||
users(post, Request) ->
|
||||
{ok, Body, _} = cowboy_req:read_body(Request),
|
||||
Params = emqx_json:decode(Body, [return_maps]),
|
||||
Tag = maps:get(<<"tag">>, Params),
|
||||
Username = maps:get(<<"username">>, Params),
|
||||
Password = maps:get(<<"password">>, Params),
|
||||
case ?EMPTY(Username) orelse ?EMPTY(Password) of
|
||||
true ->
|
||||
{400, #{code => <<"CREATE_USER_FAIL">>,
|
||||
message => <<"Username or password undefined">>}};
|
||||
false ->
|
||||
case emqx_dashboard_admin:add_user(Username, Password, Tag) of
|
||||
ok -> {200};
|
||||
{error, Reason} ->
|
||||
{400, #{code => <<"CREATE_USER_FAIL">>, message => Reason}}
|
||||
end
|
||||
end.
|
||||
|
||||
user(put, Request) ->
|
||||
Username = cowboy_req:binding(username, Request),
|
||||
{ok, Body, _} = cowboy_req:read_body(Request),
|
||||
Params = emqx_json:decode(Body, [return_maps]),
|
||||
Tags = maps:get(<<"tags">>, Params),
|
||||
case emqx_dashboard_admin:update_user(Username, Tags) of
|
||||
Tag = maps:get(<<"tag">>, Params),
|
||||
case emqx_dashboard_admin:update_user(Username, Tag) of
|
||||
ok -> {200};
|
||||
{error, Reason} ->
|
||||
{400, #{code => <<"UPDATE_FAIL">>, message => Reason}}
|
||||
|
@ -208,24 +225,6 @@ user(delete, Request) ->
|
|||
false ->
|
||||
_ = emqx_dashboard_admin:remove_user(Username),
|
||||
{200}
|
||||
end;
|
||||
|
||||
user(post, Request) ->
|
||||
{ok, Body, _} = cowboy_req:read_body(Request),
|
||||
Params = emqx_json:decode(Body, [return_maps]),
|
||||
Tags = maps:get(<<"tags">>, Params),
|
||||
Username = maps:get(<<"username">>, Params),
|
||||
Password = maps:get(<<"password">>, Params),
|
||||
case ?EMPTY(Username) orelse ?EMPTY(Password) of
|
||||
true ->
|
||||
{400, #{code => <<"CREATE_USER_FAIL">>,
|
||||
message => <<"Username or password undefined">>}};
|
||||
false ->
|
||||
case emqx_dashboard_admin:add_user(Username, Password, Tags) of
|
||||
ok -> {200};
|
||||
{error, Reason} ->
|
||||
{400, #{code => <<"CREATE_USER_FAIL">>, message => Reason}}
|
||||
end
|
||||
end.
|
||||
|
||||
change_pwd(put, Request) ->
|
||||
|
@ -240,8 +239,8 @@ change_pwd(put, Request) ->
|
|||
{400, #{code => <<"CHANGE_PWD_FAIL">>, message => Reason}}
|
||||
end.
|
||||
|
||||
row(#mqtt_admin{username = Username, tags = Tags}) ->
|
||||
#{username => Username, tags => Tags}.
|
||||
row(#mqtt_admin{username = Username, tags = Tag}) ->
|
||||
#{username => Username, tag => Tag}.
|
||||
|
||||
bad_request() ->
|
||||
response_schema(<<"Bad Request">>,
|
||||
|
|
|
@ -96,7 +96,7 @@ t_rest_api(_Config) ->
|
|||
, http_post("users", #{<<"username">> => <<"usera">>, <<"password">> => <<"passwd">>})
|
||||
, http_post("auth", #{<<"username">> => <<"usera">>, <<"password">> => <<"passwd">>})
|
||||
, http_delete("users/usera")
|
||||
, http_put("change_pwd/admin", #{<<"old_pwd">> => <<"public">>, <<"new_pwd">> => <<"newpwd">>})
|
||||
, http_put("users/admin/change_pwd", #{<<"old_pwd">> => <<"public">>, <<"new_pwd">> => <<"newpwd">>})
|
||||
, http_post("auth", #{<<"username">> => <<"admin">>, <<"password">> => <<"newpwd">>})
|
||||
]],
|
||||
ok.
|
||||
|
|
|
@ -118,7 +118,8 @@ format({Addr, Port}) when is_tuple(Addr) ->
|
|||
io_lib:format("~s:~w", [inet:ntoa(Addr), Port]).
|
||||
|
||||
apps() ->
|
||||
Apps = [App || {App, _, _} <- application:loaded_applications(), App =/= emqx_dashboard],
|
||||
% Apps = [App || {App, _, _} <- application:loaded_applications(), App =/= emqx_dashboard],
|
||||
Apps = [App || {App, _, _} <- application:loaded_applications()],
|
||||
lists:filter(fun(App) ->
|
||||
case re:run(atom_to_list(App), "^emqx") of
|
||||
{match,[{0,4}]} -> true;
|
||||
|
|
Loading…
Reference in New Issue