optimize file tree loading ⚡
This commit is contained in:
		
							parent
							
								
									a1fde02879
								
							
						
					
					
						commit
						fac3adc11b
					
				| 
						 | 
					@ -69,7 +69,7 @@ func initAPINode() {
 | 
				
			||||||
// so that users can easily view the Go API source code in file tree.
 | 
					// so that users can easily view the Go API source code in file tree.
 | 
				
			||||||
func GetFiles(w http.ResponseWriter, r *http.Request) {
 | 
					func GetFiles(w http.ResponseWriter, r *http.Request) {
 | 
				
			||||||
	data := map[string]interface{}{"succ": true}
 | 
						data := map[string]interface{}{"succ": true}
 | 
				
			||||||
	defer util.RetJSON(w, r, data)
 | 
						defer util.RetGzJSON(w, r, data)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	session, _ := session.HTTPSession.Get(r, "wide-session")
 | 
						session, _ := session.HTTPSession.Get(r, "wide-session")
 | 
				
			||||||
	if session.IsNew {
 | 
						if session.IsNew {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										21
									
								
								util/ret.go
								
								
								
								
							
							
						
						
									
										21
									
								
								util/ret.go
								
								
								
								
							| 
						 | 
					@ -15,6 +15,7 @@
 | 
				
			||||||
package util
 | 
					package util
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
 | 
						"compress/gzip"
 | 
				
			||||||
	"encoding/json"
 | 
						"encoding/json"
 | 
				
			||||||
	"net/http"
 | 
						"net/http"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -33,3 +34,23 @@ func RetJSON(w http.ResponseWriter, r *http.Request, res map[string]interface{})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	w.Write(data)
 | 
						w.Write(data)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// RetGzJSON writes HTTP response with "Content-Type, application/json".
 | 
				
			||||||
 | 
					func RetGzJSON(w http.ResponseWriter, r *http.Request, res map[string]interface{}) {
 | 
				
			||||||
 | 
						w.Header().Set("Content-Type", "application/json")
 | 
				
			||||||
 | 
						w.Header().Set("Content-Encoding", "gzip")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						gz := gzip.NewWriter(w)
 | 
				
			||||||
 | 
						err := json.NewEncoder(gz).Encode(res)
 | 
				
			||||||
 | 
						if nil != err {
 | 
				
			||||||
 | 
							glog.Error(err)
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						err = gz.Close()
 | 
				
			||||||
 | 
						if nil != err {
 | 
				
			||||||
 | 
							glog.Error(err)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue