Go 访问链接后获取输出字符串
我正在写一个围棋程序。 在这个程序中,我访问一个网站,在这个网站上,它将打印一个字符串。我想为下一个进程获取此字符串。 例如: 我通过curl访问,返回的字符串如下:Go 访问链接后获取输出字符串,go,Go,我正在写一个围棋程序。 在这个程序中,我访问一个网站,在这个网站上,它将打印一个字符串。我想为下一个进程获取此字符串。 例如: 我通过curl访问,返回的字符串如下: curl localhost:4000 abc_example 我需要在我的程序的下一个过程中获得“abc_示例”。 现在,这个问题解决了 实际上,我的结果将是这样的JSON: {"name":"xyz_example"} 如何解析此字符串并获取“xyz_示例” 我是围棋的新手。你能帮助我吗。 谢谢大家! 下面是一个从HTTP
curl localhost:4000
abc_example
我需要在我的程序的下一个过程中获得“abc_示例”。
现在,这个问题解决了
实际上,我的结果将是这样的JSON:
{"name":"xyz_example"}
如何解析此字符串并获取“xyz_示例”
我是围棋的新手。你能帮助我吗。
谢谢大家! 下面是一个从HTTP请求读取响应的示例。 我建议大家阅读http包的相关教程,也许还可以读一个简单的教程,比如
谢谢你,奥普纳提库斯先生。我想再问一个问题。我的结果将是这样的JSON:{“name”:“xyz_example”}我如何解析这个字符串并只得到“xyz_example”谢谢,这取决于您查询的服务器正在提供什么服务。您刚刚发布的(
{“name”:“xyz_example”}
)是JSON,而您最初的问题是关于返回字符串的服务器。不管是哪种方式,与本例非常相似的是如何获得响应,但是如果您需要JSON,您可能希望使用“encoding/JSON”包解析responseBytes
,而不仅仅是转换为字符串。非常感谢您的关键字。我现在可以做了:D
package main
import (
"fmt"
"net/http"
"io/ioutil"
)
func main() {
//make a request
response, err := http.Get("https://mdtf.org")
if err != nil {
fmt.Println("error making request: ", err)
return
}
//make sure the response body gets closed
defer response.Body.Close()
//read the bytes
responseBytes, err := ioutil.ReadAll(response.Body)
if err != nil {
fmt.Println("error reading response bytes: ", err)
return
}
//turn the response bytes into a string
responseString := string(responseBytes)
//print it or something
fmt.Println(responseString)
}