gpt4 book ai didi

Golang http get 请求在某些但不是所有 url 上中断

转载 作者:数据小太阳 更新时间:2023-10-29 03:29:27 24 4
gpt4 key购买 nike

现在我正在使用 [此处][1] 中的基本获取请求模板从 indiegogo 获取 url 作为副项目的一部分。然后我使用

将字节数据转换为字符串
responseText, err:= ioutil.ReadAll(response.Body)
trueText:= string(responseText)

在需要时进行适当的错误处理

它适用于重复尝试获取和其他一些不同长度的 url(至少与前一个 url 一样大,一些比下一个长)。

奇怪的是,当我试图让它中断并抛出一个运行时错误

panic: runtime error: index out of range

并以状态 2 退出。我很好奇问题可能是什么。

我知道这不是 indiegogo 对我每分钟一次的请求生气并切断我的连接,因为我可以毫无问题地连续请求 20 分钟。给它一点停机时间,它仍然完全中断

感谢帮助

编辑,它看​​起来好像是一些页面中的 html 格式不正确,我正在运行的循环基于仅在某些 url 上设法中断运行时的内容。感谢您的帮助

[1]:

最佳答案

从url获取并把body转为Go的string类型时没有报错。例如,

package main

import (
"fmt"
"io/ioutil"
"log"
"net/http"
)

func main() {
url := "http://www.indiegogo.com/projects/culcharge-smallest-usb-charge-and-data-cable-for-iphone-and-android"
res, err := http.Get(url)
if err != nil {
log.Fatal(err)
}
body, err := ioutil.ReadAll(res.Body)
res.Body.Close()
if err != nil {
log.Fatal(err)
}
text := string(body)
fmt.Println(len(body), len(text))
}

输出:

66363 66363

您没有向我们提供以您描述的方式编译、运行和失败的一小段代码。这让我们都在猜测。

关于Golang http get 请求在某些但不是所有 url 上中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17822161/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com