chore(router): match method added to routergroup for multiple HTTP methods supporting (#3464)
This commit is contained in:
		@ -42,6 +42,7 @@ type IRoutes interface {
 | 
				
			|||||||
	PUT(string, ...HandlerFunc) IRoutes
 | 
						PUT(string, ...HandlerFunc) IRoutes
 | 
				
			||||||
	OPTIONS(string, ...HandlerFunc) IRoutes
 | 
						OPTIONS(string, ...HandlerFunc) IRoutes
 | 
				
			||||||
	HEAD(string, ...HandlerFunc) IRoutes
 | 
						HEAD(string, ...HandlerFunc) IRoutes
 | 
				
			||||||
 | 
						Match([]string, string, ...HandlerFunc) IRoutes
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	StaticFile(string, string) IRoutes
 | 
						StaticFile(string, string) IRoutes
 | 
				
			||||||
	StaticFileFS(string, string, http.FileSystem) IRoutes
 | 
						StaticFileFS(string, string, http.FileSystem) IRoutes
 | 
				
			||||||
@ -151,6 +152,15 @@ func (group *RouterGroup) Any(relativePath string, handlers ...HandlerFunc) IRou
 | 
				
			|||||||
	return group.returnObj()
 | 
						return group.returnObj()
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// Match registers a route that matches the specified methods that you declared.
 | 
				
			||||||
 | 
					func (group *RouterGroup) Match(methods []string, relativePath string, handlers ...HandlerFunc) IRoutes {
 | 
				
			||||||
 | 
						for _, method := range methods {
 | 
				
			||||||
 | 
							group.handle(method, relativePath, handlers)
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						return group.returnObj()
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// StaticFile registers a single route in order to serve a single file of the local filesystem.
 | 
					// StaticFile registers a single route in order to serve a single file of the local filesystem.
 | 
				
			||||||
// router.StaticFile("favicon.ico", "./resources/favicon.ico")
 | 
					// router.StaticFile("favicon.ico", "./resources/favicon.ico")
 | 
				
			||||||
func (group *RouterGroup) StaticFile(relativePath, filepath string) IRoutes {
 | 
					func (group *RouterGroup) StaticFile(relativePath, filepath string) IRoutes {
 | 
				
			||||||
 | 
				
			|||||||
@ -186,6 +186,7 @@ func testRoutesInterface(t *testing.T, r IRoutes) {
 | 
				
			|||||||
	assert.Equal(t, r, r.PUT("/", handler))
 | 
						assert.Equal(t, r, r.PUT("/", handler))
 | 
				
			||||||
	assert.Equal(t, r, r.OPTIONS("/", handler))
 | 
						assert.Equal(t, r, r.OPTIONS("/", handler))
 | 
				
			||||||
	assert.Equal(t, r, r.HEAD("/", handler))
 | 
						assert.Equal(t, r, r.HEAD("/", handler))
 | 
				
			||||||
 | 
						assert.Equal(t, r, r.Match([]string{http.MethodPut, http.MethodPatch}, "/match", handler))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	assert.Equal(t, r, r.StaticFile("/file", "."))
 | 
						assert.Equal(t, r, r.StaticFile("/file", "."))
 | 
				
			||||||
	assert.Equal(t, r, r.StaticFileFS("/static2", ".", Dir(".", false)))
 | 
						assert.Equal(t, r, r.StaticFileFS("/static2", ".", Dir(".", false)))
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user