Вопросы с тегом «go»

Go - это язык программирования с открытым исходным кодом. Он имеет статическую типизацию, с синтаксисом, свободно полученным из C, с добавлением автоматического управления памятью, безопасностью типов, некоторыми возможностями динамической типизации, дополнительными встроенными типами, такими как массивы переменной длины (называемые слайсами) и карты значений ключей, и большая стандартная библиотека.

24
Как мне установить переменную среды GOPATH в Ubuntu? Какой файл я должен редактировать?
Я пытаюсь сделать go get: go get github.com/go-sql-driver/mysql и это терпит неудачу со следующей ошибкой: package github.com/go-sql-driver/mysql: cannot download, $GOPATH not set. For more details see: go help gopath когда я делаю a go env, список значений Go отображается, как показано ниже: ubuntu@ip-xxx-x-xx-x:~$ go env GOARCH="amd64" GOBIN="" GOCHAR="6" GOEXE="" GOHOSTARCH="amd64" …
258 linux  ubuntu  go 

6
Обработка JSON-запроса в Go
Итак, у меня есть следующее, которое кажется невероятным, и я подумал, что Go имеет лучше спроектированные библиотеки, чем этот, но я не могу найти пример того, как Go обрабатывает POST-запрос данных JSON. Все они представляют собой посты. Вот пример запроса: curl -X POST -d "{\"test\": \"that\"}" http://localhost:8082/test А вот код …
250 json  go 

2
Синтаксис объявления функции: в скобках перед именем функции
Я сожалею, что не мог быть более конкретным в названии вопроса, но я читал некоторый код Go и столкнулся с объявлениями функций этой формы: func (h handler) ServeHTTP(w http.ResponseWriter, r *http.Request) { ... } с https://github.com/mattermost/platform/blob/master/api/context.go func (s *GracefulServer) BlockingClose() bool { ... } с https://github.com/braintree/manners/blob/master/server.go Что делает (h handler)и …
250 go 

4
Как отправить строку JSON в запросе POST в Go
Я попытался работать с Apiary и сделал универсальный шаблон для отправки JSON на макет сервера и получить этот код: package main import ( "encoding/json" "fmt" "github.com/jmcvetta/napping" "log" "net/http" ) func main() { url := "http://restapi3.apiary.io/notes" fmt.Println("URL:>", url) s := napping.Session{} h := &http.Header{} h.Set("X-Custom-Header", "myvalue") s.Header = h var jsonStr …
244 json  rest  go  apiary 

9
Как получить каталог текущего запущенного файла?
В nodejs я использую __dirname . Что эквивалентно этому на Голанге? Я гуглил и обнаружил эту статью http://andrewbrookins.com/tech/golang-get-directory-of-the-current-file/ . Где он использует приведенный ниже код _, filename, _, _ := runtime.Caller(1) f, err := os.Open(path.Join(path.Dir(filename), "data.csv")) Но это правильный или идиоматический способ сделать на Голанге?
239 go 

7
Организация многофайлового проекта Go [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 8 месяцев назад . Улучшить этот вопрос Примечание: этот вопрос связан с этим один , но два …
238 go 

5
Как избежать надоедливой ошибки «объявлена ​​и не использована»
Я изучаю Go, но мне немного досадно, что при компиляции я не должен оставлять ни одну переменную или пакет неиспользованным. Это действительно довольно сильно замедляет меня. Например, я просто хотел объявить новый пакет и планировать использовать его позже или просто раскомментировать некоторую команду для тестирования. Я всегда получаю сообщение об …
238 go 


6
Получение фрагмента ключей с карты
Есть ли какой-нибудь более простой / приятный способ получить часть ключей с карты в Go? В настоящее время я перебираю карту и копирую ключи в срез: i := 0 keys := make([]int, len(mymap)) for k := range mymap { keys[i] = k i++ }
230 go 

3
Удаление пакетов, установленных с помощью go get
Я побежал, go get packageчтобы загрузить пакет, прежде чем узнал, что мне нужно установить свой GOPATHпакет, иначе моя корневая установка Go будет стоить (я бы предпочел, чтобы моя установка Go оставалась чистой и отделяла ядро ​​от пользовательского). Как удалить ранее установленные пакеты?
227 go 


12
Как Go компилируется так быстро?
Я гуглил и ковырялся на сайте Go, но, похоже, не могу найти объяснения необыкновенному времени сборки Go. Являются ли они продуктами языковых возможностей (или их отсутствием), высоко оптимизированным компилятором или чем-то еще? Я не пытаюсь продвигать Go; Мне просто любопытно.

12
Содержит метод для среза
Есть ли что-то похожее на slice.contains(object)метод в Go без необходимости выполнять поиск по каждому элементу в срезе?
215 go  slice 


9
Можно ли перехватить сигнал Ctrl + C и запустить функцию очистки «отложенным» способом?
Я хочу захватить сигнал Ctrl+C( SIGINT), отправленный с консоли, и распечатать некоторые частичные итоги прогона. Возможно ли это на Голанге? Примечание: Когда я впервые опубликовал вопрос, я был озадачен тем, Ctrl+Cчто SIGTERMвместо того, чтобы быть SIGINT.
207 signals  go  sigterm 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.