Maison > développement back-end > Golang > Comment accéder à un corps de réponse HTTP sous forme de chaîne dans Go ?

Comment accéder à un corps de réponse HTTP sous forme de chaîne dans Go ?

DDD
Libérer: 2024-12-08 07:24:16
original
347 Les gens l'ont consulté

How Do I Access an HTTP Response Body as a String in Go?

Accès à la réponse HTTP sous forme de chaîne dans Go

Lors de l'analyse de la réponse d'une requête Web, y accéder sous forme de chaîne peut être problématique. Considérez le code suivant :

resp, err := http.Get("http://google.hu/")
if err != nil {
    // handle error
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
Copier après la connexion

Pendant que le code récupère avec succès le corps de la réponse, essayez de le parcourir sous forme de chaîne en utilisant for i:= 0; je &Lt ; lentille(corps); i { fmt.Println( body[i] ) } renvoie des valeurs numériques au lieu de caractères.

La clé pour accéder à la réponse sous forme de chaîne réside dans une simple conversion :

bs := string(body)
Copier après la connexion

Ceci La conversion traite le corps de la tranche d'octets comme une séquence de points de code Unicode et crée une chaîne correspondante. Une fois converti, vous pouvez manipuler bs comme n'importe quelle autre chaîne.

Par exemple, le code suivant démontre la conversion et la manipulation de chaîne ultérieure :

var client http.Client
resp, err := client.Get(url)
if err != nil {
    log.Fatal(err)
}
defer resp.Body.Close()

if resp.StatusCode == http.StatusOK {
    bodyBytes, err := io.ReadAll(resp.Body)
    if err != nil {
        log.Fatal(err)
    }
    bodyString := string(bodyBytes)
    fmt.Println(bodyString)
}
Copier après la connexion

Cette conversion met en évidence la distinction entre les octets et les chaînes en Aller. Les chaînes sont des séquences immuables de points de code Unicode, tandis que les tranches d'octets sont des séquences mutables d'octets bruts. La conversion d'une tranche d'octets en chaîne crée effectivement une nouvelle chaîne qui représente la séquence de caractères codée par les octets.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal