From b07c9f0b6b5ecd5b37ae18dc375eb1975a73275a Mon Sep 17 00:00:00 2001 From: Yuzuki999 Date: Fri, 23 Dec 2022 01:52:44 +0800 Subject: [PATCH] fix report bug --- api/panel/node.go | 11 ++++------- api/panel/node_test.go | 22 +++++++++++++++++++--- api/panel/user.go | 2 +- 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/api/panel/node.go b/api/panel/node.go index d13a4d2..d01c366 100644 --- a/api/panel/node.go +++ b/api/panel/node.go @@ -4,7 +4,6 @@ import ( "github.com/goccy/go-json" "regexp" "strconv" - "strings" ) type NodeInfo struct { @@ -62,12 +61,10 @@ func (c *Client) GetNodeInfo() (nodeInfo *NodeInfo, err error) { nodeInfo.NodeType = c.NodeType for i := range nodeInfo.Routes { // parse rules from routes if nodeInfo.Routes[i].Action == "block" { - for _, v := range strings.Split(nodeInfo.Routes[i].Match, ",") { - nodeInfo.Rules = append(nodeInfo.Rules, DestinationRule{ - ID: nodeInfo.Routes[i].Id, - Pattern: regexp.MustCompile(v), - }) - } + nodeInfo.Rules = append(nodeInfo.Rules, DestinationRule{ + ID: nodeInfo.Routes[i].Id, + Pattern: regexp.MustCompile(nodeInfo.Routes[i].Match), + }) } } nodeInfo.Routes = nil diff --git a/api/panel/node_test.go b/api/panel/node_test.go index b0c2b6e..575833c 100644 --- a/api/panel/node_test.go +++ b/api/panel/node_test.go @@ -6,7 +6,9 @@ import ( "testing" ) -func TestClient_GetNodeInfo(t *testing.T) { +var client Panel + +func init() { c, err := New(&conf.ApiConfig{ APIHost: "http://127.0.0.1", Key: "token", @@ -14,7 +16,21 @@ func TestClient_GetNodeInfo(t *testing.T) { NodeID: 1, }) if err != nil { - log.Print(err) + log.Panic(err) } - log.Println(c.GetNodeInfo()) + client = c +} + +func TestClient_GetNodeInfo(t *testing.T) { + log.Println(client.GetNodeInfo()) +} + +func TestClient_ReportUserTraffic(t *testing.T) { + log.Println(client.ReportUserTraffic([]UserTraffic{ + { + UID: 10372, + Upload: 1000, + Download: 1000, + }, + })) } diff --git a/api/panel/user.go b/api/panel/user.go index 41f6887..1dd999c 100644 --- a/api/panel/user.go +++ b/api/panel/user.go @@ -62,7 +62,7 @@ func (c *Client) ReportUserTraffic(userTraffic []UserTraffic) error { } const path = "/api/v1/server/UniProxy/push" res, err := c.client.R(). - SetBody(userTraffic). + SetBody(data). ForceContentType("application/json"). Post(path) err = c.checkResponse(res, path, err)