в то время как код ниже исходный код
func handleAddFunc(w http.ResponseWriter, r *http.Request) {
backend := r.FormValue("backend")
key := r.FormValue("key")
if !isAuthorized(key) {
respond(w, r, 403, "")
return
}
w.Header().Set("Content-Type", "text/plain")
if !readConfig() {
return
}
activeAddrs = make([]proxy.Address, len(config.Proxy.ServerAddrs))
backendAddr = make([]proxy.Address, len(backend))
copy(backendAddr, config.Proxy.ServerAddrs)
copy(backendAddr, backend)
loadBalancer.SetAddrs(backendAddr)
fmt.Fprintf(w, "Input value of ", backend, "and here is the byte", backendAddr)
}
ошибки вашего кода, является copy(backendAddr, backend)
, переменная Бэкэнд значение строки из запроса от, вы можете изменить это в []proxy.Address
, например, (подумайте, что я не знаю структуру прокси.Address):
var backendAddr = []proxy.Address{}
for _,str := range strings.split(backend,","){
backendAddr = append(backendAddr, &proxy.Address(str))
}
Если ваш вопрос касается вашего кода, включите его в вопрос, не публикуйте его на другой сайт. Если coDe слишком длинный, размещайте только соответствующую часть (и). Создайте минимальный, полный, проверяемый пример: [MCVE] (http://stackoverflow.com/help/mcve) – icza