The expression is inside of the main function. package main
import ( "fmt" "strings" "net/http" "io/ioutil" ) func main() { url := "https://developer-api.nest.com/structures" payload := strings.NewReader("code=aaaaa&client_id=bbbb&client_secret=cccc&grant_type=authorization_code") req, _ := http.NewRequest("GET", url, payload) req.Header.Add("content-type", "application/json") type Params struct { auth string } func doIt(p Params) string { return p.auth } doIt(Params{auth: xxxx}) res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } On Tue, Dec 13, 2016 at 11:13 AM, Chris Manghane <cm...@google.com> wrote: > That error seems to be from writing that expression outside of a function. > There's no problem with structs supporting string fields: > https://play.golang.org/p/YeP2qhRdxp. > > On Tue, Dec 13, 2016 at 10:45 AM, Betsy Lichtenberg <bet...@nestlabs.com> > wrote: > >> Do structs support strings? I tried this: >> >> type Params struct { >> auth string >> } >> >> func doIt(p Params) string { >> return p.auth >> } >> >> doIt(Params{auth: xxxx}) >> >> >> I'm getting these errors: >> >> betsyl-macbookpro:~ betsyl$ go run get1.go >> >> # command-line-arguments >> >> ./get1.go:25: syntax error: unexpected doIt, expecting ( >> >> ./get1.go:29: syntax error: unexpected literal .2, expecting comma or } >> >> On Tue, Dec 13, 2016 at 7:11 AM, Val <delepl...@gmail.com> wrote: >> >>> Hello Betsy >>> There is no "passing optional arguments by name" in go. >>> >>> This link [1] has an overview what what can or can't be done for >>> optional params : >>> - the *Functional options* technique. >>> - or you may define a struct as parameter, then call it with only the >>> fields you're interested in : [2] >>> This implies that "the zero values must be meaningful (i.e. acceptable >>> in your context : nil, 0, etc.)" >>> >>> things := Things{amount: 13} >>> show(things) >>> >>> [1] http://stackoverflow.com/questions/2032149/optional-parameters >>> [2] https://play.golang.org/p/yiKzomwTKM >>> >>> On Tuesday, December 13, 2016 at 6:46:23 AM UTC+1, bet...@google.com >>> wrote: >>>> >>>> Hi, >>>> >>>> In Python, I can include params like this: >>>> >>>> ===================== >>>> >>>> *params = {'auth': 'XXXXXXXX'}* >>>> >>>> response = requests.request("GET", url, data=payload, headers=headers, >>>> *params=params*) >>>> >>>> ===================== >>>> >>>> Any pointers on how Golang does this? >>>> >>>> Thanks, >>>> Betsy >>>> >>> >> -- >> You received this message because you are subscribed to the Google Groups >> "golang-nuts" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to golang-nuts+unsubscr...@googlegroups.com. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.