@proGO

Страница 428 из 1674
Den
24.01.2017
18:04:52
и в хидере локейшена естественно нет

ну нет, так как перекинуло уже

а как не перекидываться, там в хттп есть что если больше или равно 10 редиректом то ретурн

никто не подскажет, по русски вроде написал

Google
Quet
24.01.2017
18:09:21
кой-то набор слов

извини (

Berkus
24.01.2017
18:09:29
значит оно внутри себя уже обработало редирект

Den
24.01.2017
18:09:32
// CheckRedirect specifies the policy for handling redirects. // If CheckRedirect is not nil, the client calls it before // following an HTTP redirect. The arguments req and via are // the upcoming request and the requests made already, oldest // first. If CheckRedirect returns an error, the Client's Get // method returns both the previous Response (with its Body // closed) and CheckRedirect's error (wrapped in a url.Error) // instead of issuing the Request req. // As a special case, if CheckRedirect returns ErrUseLastResponse, // then the most recent response is returned with its body // unclosed, along with a nil error. // // If CheckRedirect is nil, the Client uses its default policy, // which is to stop after 10 consecutive requests.

Berkus
24.01.2017
18:09:43
пожрало 302 и прошло по локейшену дальше

Den
24.01.2017
18:09:57
ну да

Berkus
24.01.2017
18:10:05
ну так и в чем вопрос

Den
24.01.2017
18:10:16
по умолчанию клиент жрет 10 локейшенов

а мне не надо, я не шарю, можно конечно нет себе забрать его импортнуть и изменить

Berkus
24.01.2017
18:11:07
зачем, ты же показал вон нужный кусок доки\

Den
24.01.2017
18:11:16
func defaultCheckRedirect(req *Request, via []*Request) error { if len(via) >= 10 { return errors.New("stopped after 10 redirects") } return nil }

Berkus
24.01.2017
18:11:19
передай ему свой CheckRedirect

Den
24.01.2017
18:11:31
а как это

Google
Den
24.01.2017
18:11:49
client := &http.Client{Transport: tbTransport}

Berkus
24.01.2017
18:13:12
ну вот тут еще CheckRedirect: myCheckRedirect добавь

Den
24.01.2017
18:14:47
я тупенький

Berkus
24.01.2017
18:15:05
а я не пишу на го )

Den
24.01.2017
18:15:44
а я думал го для роботов

ладно, пусть так голосует

все, ушел, добрые

Maxim
24.01.2017
18:16:59
все, ушел, добрые
Я не тебе. :D

Den
24.01.2017
18:17:30
это смотря как пост делать

Alexey
24.01.2017
18:17:35
// True if the specified HTTP status code is one for which the Post utility should // automatically redirect. func shouldRedirectPost(statusCode int) bool { switch statusCode { case StatusFound, StatusSeeOther: return true } return false }

Den
24.01.2017
18:17:52
http.NewRequest("POST", "http://7.htm", &by)

он не пост редиректит а респонс на пост

ретурнает уже редирекченный боди

Нормально изъясняюсь?

Berkus
24.01.2017
18:19:38
> case StatusFound эмм но это жа 302?

Alexey
24.01.2017
18:20:53
Berkus
24.01.2017
18:21:11
ну то есть оно будет редиректить

а Дену я так понимаю, нужно чтобы не редиректило

Google
Alexey
24.01.2017
18:22:57
Ну тогда надо создавать клиента. И клиенту давать CheckRedirect

https://golang.org/pkg/net/http/#Client

Slach
25.01.2017
06:21:49
=) всем привет а подскажите пожалуйста а по каким причинам может go bench не выходить из процесса хотя во время теста случился принудительный вызов panic(err) код выглядит примерно так if err := q.Exec(g.db_conn[i]); err != nil { panic(err) } панику в stderr рисует но из процесса не выходит почему ? ;) я понимаю что надо return nil, err правильнее, но конкретно в этом случае надо делать выход делать log.Fatal(err) тоже не очень хочется в этом месте

Kirill
25.01.2017
06:22:43
а почему у тебя вообще такой вызов случился?

почему ты не используешь встроенные возможности выхода?

не всякие паники

а метод специальный

Slach
25.01.2017
06:24:13
ну хотелось понять чем panic в go отличается от exception в python на пальцах так сказать

ну то есть да, я могу там поставить log.Fatal(err) os.Exit(1)

Kirill
25.01.2017
06:25:21
ну — для начала, паника должна быть тогда, когда нужно выйти из программы при ошибке, потому что её невозможно обработать и она затрагивает сразу всю работоспособность программы. в других случаях паник не должно быть категорически.

их даже сравнивать с исключениями категорически нельзя как минимум потому, что использовать исключения в других языках — нормально, а использовать панику в Go — нет.

Slach
25.01.2017
06:28:04
ну, я понимаю что ненормально и panic это именно что остановка всего рантайма и по идее выход из процесса

Slach
25.01.2017
06:30:11
но все таки почему принудительный вызов panic внутри go bench не приводит к остановке go bench ??? потому что оно там делает спокойненько recover ? и пох что там течь все может?

Yura
25.01.2017
08:05:28
Надо открывать issue. Сделаешь? Я плюсану.

Никита
25.01.2017
08:17:14
https://youtu.be/mur2aRsRxZ0

Slach
25.01.2017
08:22:19
Надо открывать issue. Сделаешь? Я плюсану.
хмм... я думал это все таки специално так задумано и есть конкретная причина для issue надо условия воспроизведения делать мне сейчас некогда сорри =)

Roman
25.01.2017
08:57:01
но все таки почему принудительный вызов panic внутри go bench не приводит к остановке go bench ??? потому что оно там делает спокойненько recover ? и пох что там течь все может?
Потому что поставил ; я что то не уверен в обработке булевой логики с таким оператором.. Попробуй && по классике.

Roman
25.01.2017
08:59:43
Вобще то go way обработки ошибок x, err := myfunc() If err { ... }

Google
Demiurg
25.01.2017
09:02:14
а прочие какие?

Roman
25.01.2017
09:26:32
Вот такой код работает: func main() { if f, err := Sqrt(-1) if err != nil { panic(err) } fmt.Println(f) }

Ну и этот тоже работает: func main() { err := Sqrt(-1); if err != nil { panic(err) } fmt.Println("11") }

Тупанул вопрос был про выход

Вобще для обработки ошибок тут используется log.Fatal(err) : https://blog.golang.org/error-handling-and-go

panic() используется для перехвата и восстановления ошибок через recover(). https://blog.golang.org/defer-panic-and-recover

Roman
25.01.2017
10:07:30
Из примера по ссылке

Admin
ERROR: S client not available

Slach
25.01.2017
10:21:39
в общем оно у меня под golangd в дебагере не выходило из процесса возможно это косяк golangd или дебагера

Subbotin
25.01.2017
10:53:24
а кто чем профайлится в го?

Serge
25.01.2017
10:55:21
https://github.com/golang/go/issues/18721
"We're going to rethink errors in Go 2, so let's leave the general topic for then. We're very unlikely to add something this substantial before then."

Aleksey
25.01.2017
11:08:05
Встроенным pprof

Denis
25.01.2017
11:18:04
где можно почитать что они там мутят для 2.x

в milestones 2.x вообще нет

ви а гоин ту рефинк эрорс, может еще что годное они гоин

Subbotin
25.01.2017
11:30:51
будут генерики, потокобезопасные мапы, встроенные функции map filter и reduce

https://github.com/goodlang/good/issues

i
25.01.2017
11:32:11
наследование будет?

Google
Alexander
25.01.2017
11:52:32
нет, сказано же – используйте композицию

Denis
25.01.2017
11:53:22
?

Kirill
25.01.2017
12:08:03
наследование будет?
нет, оно не нужно.

Subbotin
25.01.2017
14:43:15
чё-то под макось у меня pprof упорно ничего не пишет в файл профайла

он под маком работает или нужен линупс?

ну понятно. короче проще под линупсом

Evgenij
25.01.2017
14:55:17
i
25.01.2017
14:56:09
Прост

Evgenij
25.01.2017
14:56:40
Прост
И тут прост)

Если интересно погугли про делегирование против наследования

Quet
25.01.2017
14:58:41
Evgenij
25.01.2017
15:03:22
Если интересно погугли про делегирование против наследования
Даже не гугли а по дагай) https://duckduckgo.com там более интересно

Denis
25.01.2017
15:06:47
Making the move from Scala to Go, and why we're not going back | Movio Movio Blog https://movio.co/blog/migrate-Scala-to-Go/

Denis
25.01.2017
15:11:33
Статья большая, правда сравнение акторов с каналами нелепое, но в целом newbie оценят

Evgenij
25.01.2017
15:14:31
Мне один чел сказал что можно запустить го прогу на баре метал(я ему доверяю) - это очень сильно перевешивает в некоторых вопросах

Daniel
25.01.2017
15:15:09
можно, но зачем?

какой толк в этой проге без всего остального, что есть в системе?

Yura
25.01.2017
15:15:54
Ну, для Ocaml я такое слышал. И для C++.

Denis
25.01.2017
15:16:09
Там еще ссылочки на примеры выполнения backpressure и построение FIFO ответов при параллельной обработке

Evgenij
25.01.2017
15:16:11
Ну система наслаивается как мясо на шампур)))

Страница 428 из 1674