在Golang中传递URL中的变量。

huangapple go评论88阅读模式
英文:

Pass variable in URL golang

问题

我是你的中文翻译助手,以下是你要翻译的内容:

我对Go语言还不熟悉,所以可能很基础。我有一个从URL获取JSON的函数,并且需要在URL中传递一个变量整数。如何将一个变量附加到另一个变量的末尾?这是我的代码:

type content struct {
    StationTitle string `json:"StationTitle"`
}

func main() {
    resp := content{}
    getContent("http://foo.foo2.foo3=variableInteger", &resp)
    println(resp.StationTitle)
}

// 获取JSON
func getContent(url string, target interface{}) error {
    r, err := http.Get(url)
    if err != nil {
        return err
    }
    defer r.Body.Close()

    return json.NewDecoder(r.Body).Decode(target)
}

希望对你有帮助!

英文:

I am new to go so this probably elementary. I have a function to retrieve json from a URL and need to pass a variable integer within the URL. How do append a variable onto the end of another variable? Here is my code:

    type content struct {

StationTitle string `json:"StationTitle"`
}

func main() {

resp := content{}
getContent("http://foo.foo2.foo3=variableInteger", &resp)
println(resp.StationTitle)
}

// fetch json

func getContent(url string, target interface{}) error {
r, err := http.Get(url)
if err != nil {
return err
}
defer r.Body.Close()

return json.NewDecoder(r.Body).Decode(target)
}

答案1

得分: 7

使用fmt.Sprintf

getContent(fmt.Sprintf("http://foo.foo2.foo3=%d", variableInteger), &resp)
英文:

Using fmt.Sprintf

getContent(fmt.Sprintf("http://foo.foo2.foo3=%d", variableInteger), &resp)

答案2

得分: 3

我会使用net/url包来构建你的URL。

package main

import (
	"fmt"
	"net/url"
)

func main() {
	query := make(url.Values)
	query.Add("foo3", "123")
	url := &url.URL{RawQuery: query.Encode(), Host: "foo", Scheme: "http"}
	fmt.Println(url.String())
}

这段代码使用net/url包构建URL,并输出URL的字符串表示形式。

英文:

I would use the net/url package to build your URL.

	package main
	
	import ("fmt"
		"net/url"
		)
	
	
	func main() {
		query := make(url.Values)
		query.Add("foo3", "123")
		url := &url.URL{RawQuery: query.Encode(), Host: "foo", Scheme: "http"}
		fmt.Println(url.String())
	
    }

huangapple
  • 本文由 发表于 2015年12月25日 05:46:30
  • 转载请务必保留本文链接:https://go.coder-hub.com/34458176.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定