Browse Source

update notice

jflyfox 4 years ago
parent
commit
82dff302ba
3 changed files with 33 additions and 2 deletions
  1. 7 1
      README.md
  2. 3 1
      example/main.go
  3. 23 0
      example/test/api_test.go

+ 7 - 1
README.md

@@ -58,7 +58,7 @@ GlobalMiddleware bool
 	gtoken.Start()
 ```
 
-登录方法实现,通过username返回是否为空判断登录是否成功
+登录方法实现,通过username返回空或者r.ExitAll()\r.Exit()处理认证失败
 
 ```go
 func Login(r *ghttp.Request) (string, interface{}) {
@@ -66,11 +66,17 @@ func Login(r *ghttp.Request) (string, interface{}) {
 	passwd := r.GetPostString("passwd")
 
 	// TODO 进行登录校验
+	if username == "" || passwd == "" {
+		r.Response.WriteJson(gtoken.Fail("账号或密码错误."))
+		r.ExitAll()
+	}
 
 	return username, ""
 }
 ```
 
+通过`gtoken.GetTokenData(r)`获取登录信息
+
 #### 路径拦截规则
 ```go
     AuthPaths:        g.SliceStr{"/user", "/system"},             // 这里是按照前缀拦截,拦截/user /user/list /user/add ...

+ 3 - 1
example/main.go

@@ -52,6 +52,8 @@ func initConfig() {
 	glog.Info("########service finish.")
 }
 
+var gfToken *gtoken.GfToken
+
 /*
 绑定业务路由
 */
@@ -133,7 +135,7 @@ func Login(r *ghttp.Request) (string, interface{}) {
 		r.ExitAll()
 	}
 
-	return username, ""
+	return username, "1"
 }
 
 func CORS(r *ghttp.Request) {

+ 23 - 0
example/test/api_test.go

@@ -87,6 +87,29 @@ func TestSystemUser(t *testing.T) {
 	}
 }
 
+func TestUserLoginFail(t *testing.T) {
+	// 登录失败
+	t.Log("1. login fail ")
+	if r, e := ghttp.Post(TestURL+"/login", "username=&passwd="); e != nil {
+		t.Error("error:", e)
+	} else {
+		defer r.Close()
+
+		content := string(r.ReadAll())
+
+		var respData gtoken.Resp
+		err := json.Unmarshal([]byte(content), &respData)
+		if err != nil {
+			t.Error("error:", err)
+		}
+
+		if respData.Success() {
+			t.Error("error:", "login fail:"+respData.Json())
+		}
+	}
+
+}
+
 func TestExclude(t *testing.T) {
 	// 未登录可以访问
 	t.Log("1. exclude user info")