英文:
Reading from a url resource in Go
问题
如何从URL资源中读取数据。我在下面的示例中使用了https://github.com/Kissaki/rest.go API。以下是我用来将字符串写入URL http://localhost:8080/cool 的示例。但现在我需要从URL中检索数据,我该如何读取它?
package main
import (
"fmt"
"http"
"github.com/nathankerr/rest.go"
)
type FileString struct {
value string
}
func (t *FileString) Index(w http.ResponseWriter) {
fmt.Fprintf(w, "%v", t.value)
}
func main(){
rest.Resource("cool", &FileString{s:"this is file"})
http.ListenAndServe(":3000", nil)
}
英文:
How do we read from a url resource. I have used the https://github.com/Kissaki/rest.go api in the following example. Below is the example I use to write a string to the url http://localhost:8080/cool
But now I need to retrieve the data from the url, how do I read it back?
package main
import (
"fmt"
"http"
"github.com/nathankerr/rest.go"
)
type FileString struct {
value string
}
func (t *FileString) Index(w http.ResponseWriter) {
fmt.Fprintf(w, "%v", t.value)
}
func main(){
rest.Resource("cool", &FileString{s:"this is file"})
http.ListenAndServe(":3000", nil)
}
答案1
得分: 12
如果你只想通过HTTP获取一个文件,你可以像这样做:
resp, err := http.Get("http://your.url.com/whatever.html")
check(err) // 进行一些错误处理
// 从resp.Body中读取,它是一个ReadCloser类型的对象
英文:
if you just want to fetch a file over http you could do something like this i guess
resp, err := http.Get("http://your.url.com/whatever.html")
check(err) // does some error handling
// read from resp.Body which is a ReadCloser
答案2
得分: 4
response, err := http.Get(URL) //使用包"net/http"
if err != nil {
fmt.Println(err)
return
}
defer response.Body.Close()
// 将响应数据复制到标准输出
n, err1 := io.Copy(os.Stdout, response.Body) //使用包"io"和"os"
if err != nil {
fmt.Println(err1)
return
}
fmt.Println("复制到标准输出的字节数:", n)
英文:
response, err := http.Get(URL) //use package "net/http"
if err != nil {
fmt.Println(err)
return
}
defer response.Body.Close()
// Copy data from the response to standard output
n, err1 := io.Copy(os.Stdout, response.Body) //use package "io" and "os"
if err != nil {
fmt.Println(err1)
return
}
fmt.Println("Number of bytes copied to STDOUT:", n)
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论