当前位置: 首页 > 面试题库 >

在Go中通过代理获取URL时出错

夹谷奇
2023-03-14
问题内容

这与另一个问题有关。我正在使用以下简单代码通过代理获取URL:

package main

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

func main() {
    proxyUrl, err := url.Parse("87.236.233.92:8080")
    httpClient := &http.Client { Transport: &http.Transport { Proxy: http.ProxyURL(proxyUrl) } }
    response, err := httpClient.Get("http://stackoverflow.com")
    if err != nil {
        fmt.Println(err.Error())
    } else {
        body, _ := ioutil.ReadAll(response.Body)
        fmt.Println("OK: ", len(body))
    }
}

如果运行此代码,则会收到此错误:

获取:连接到代理87.236.233.92:8080时出错:GetServByName:请求的名称有效,但是未找到请求类型的数据。

我知道代理地址是有效的,如果我通过其他方式通过代理获取URL,则它可以工作。知道为什么我会收到此错误吗?


问题答案:

http://in 指定您的代理,它应该可以工作,例如

proxyUrl, err := url.Parse("http://87.236.233.92:8080")
if err != nil {
    fmt.Println("Bad proxy URL", err)
    return
}


 类似资料:
  • 问题内容: 我开始学习Golang,我想知道如何通过调用url获得json响应,如果您能给我一个例子,那么对指导自己来说将是很棒的。 问题答案: 我会写一些辅助函数来做到这一点: 可以在这里找到完整的工作示例:http : //play.golang.org/p/b1WJb7MbQV 请注意,检查状态码和Get错误非常重要,并且必须明确关闭响应正文(请参见此处的文档: http //golang.

  • 我对许多AJAX调用运行安全检查,以查看是否有记录在案的相同IP请求。 我使用了以下一组类函数来建立IP(可以通过负载平衡器来实现,因此采用了纵向方法)。 问题是,我的用户通过代理进行操作时遇到了问题。有人能说明原因吗?我已经使用基本免费代理的在线尝试和模拟,但它似乎没有得到可变IP或任何东西-所以我不知道为什么这会说这两个IP不匹配。

  • 我只是下载了最新版本的j汤(1.7.1)并遵循官方代码(更改了url)。然后我得到了“超文本传输协议错误获取url” 我的代码有什么问题?似乎错误只是发生在Android项目,因为我在一个工作正常的Java项目做同样的事情。 注意:-我已经添加了Internet权限

  • 问题内容: 我试图通过Flask访问用户代理,但是我找不到有关它的文档,或者它没有告诉我。 问题答案: 你还可以使用包含以下属性的对象,这些属性是基于useragent字符串创建的: platform (windows, linux, macos, etc.) browser (chrome, firefox, msie, etc.) version language string (== req

  • JSoup似乎可以处理我尝试过的所有URL,但这一个给了我400个错误。 我得到的错误是:

  • 请求header GET /v1/notify Authorization:Bearer {ACCESS TOKEN} Content-Type:application/json 注:请将上方的{ACCESS TOKEN}替换为您的ACCESS TOKEN 返回 { "result": "success", "url": "http://www.foo.com/" }