diff --git a/internal/web/actions/default/api/delete.go b/internal/web/actions/default/api/delete.go
new file mode 100644
index 00000000..e1a8a54c
--- /dev/null
+++ b/internal/web/actions/default/api/delete.go
@@ -0,0 +1,22 @@
+package api
+
+import (
+ "github.com/TeaOSLab/EdgeAdmin/internal/web/actions/actionutils"
+ "github.com/TeaOSLab/EdgeCommon/pkg/rpc/pb"
+)
+
+type DeleteAction struct {
+ actionutils.ParentAction
+}
+
+func (this *DeleteAction) RunPost(params struct {
+ NodeId int64
+}) {
+ _, err := this.RPC().APINodeRPC().DeleteAPINode(this.AdminContext(), &pb.DeleteAPINodeRequest{NodeId: params.NodeId})
+ if err != nil {
+ this.ErrorPage(err)
+ return
+ }
+
+ this.Success()
+}
diff --git a/internal/web/actions/default/api/init.go b/internal/web/actions/default/api/init.go
index 8e7720de..ec7fa9fc 100644
--- a/internal/web/actions/default/api/init.go
+++ b/internal/web/actions/default/api/init.go
@@ -16,6 +16,7 @@ func init() {
Prefix("/api").
Get("", new(IndexAction)).
GetPost("/node/createPopup", new(node.CreatePopupAction)).
+ Post("/delete", new(DeleteAction)).
EndAll()
})
}
diff --git a/internal/web/actions/default/api/node/createAddrPopup.go b/internal/web/actions/default/api/node/createAddrPopup.go
index 69d53d3d..c546fd8a 100644
--- a/internal/web/actions/default/api/node/createAddrPopup.go
+++ b/internal/web/actions/default/api/node/createAddrPopup.go
@@ -29,6 +29,7 @@ func (this *CreateAddrPopupAction) RunPost(params struct {
params.Must.
Field("addr", params.Addr).
Require("请输入访问地址")
+
host, port, err := net.SplitHostPort(params.Addr)
if err != nil {
this.FailField("addr", "错误的访问地址")
diff --git a/web/views/@default/api/index.html b/web/views/@default/api/index.html
index 6f0b7cd6..f14d049a 100644
--- a/web/views/@default/api/index.html
+++ b/web/views/@default/api/index.html
@@ -26,7 +26,8 @@