这是golang中的简单http服务器。
package main
import (
"fmt"
"net/http"
)
func main() {
http.HandleFunc("/", func (w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Welcome to my website!")
})
fs := http.FileServer(http.Dir("static/"))
http.Handle("/static/", http.StripPrefix("/static/", fs))
http.ListenAndServe(":80", nil)
}
我的问题是,为什么我将%
放在url中。转到服务器原因400 Bad Request
错误
示例:
http://localhost:80/anythink%
当有人在go http服务器中请求这样的错误链接时,会导致安全信息泄漏。如果足够聪明,则检测服务器端类型。主要问题是如何处理此错误
答案 0 :(得分:0)
"http://localhost:80/anything%"
是无效的URL。百分比字符用于percent-encode保留字符,并且必须后跟两个十六进制数字。要表示百分比字符本身,请写%25
。