gpt4 book ai didi

go - net/http/transport.go 中的 Transport struct 在哪里实现 RoudTripper 接口(interface)

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

RoundTripper 界面是这样的

type RoundTripper interface {
RoundTrip(*Request) (*Response, error)
}

内部net/http/transport.go我只能找到一个名为 roundTrip(小写)的函数,所以我想知道这个 struct Transport 在哪里实现 RoundTripper 接口(interface)?

最佳答案

您要查找的函数在https://golang.org/src/net/http/roundtrip.go中而不是 https://golang.org/src/net/http/transport.go .

要查看此内容,您可以尝试这个 Playground 及其输出 - https://play.golang.org/p/A97ylJmc43R

代码在 https://golang.org/src/net/http/transport.go 中, 但后来在 https://github.com/golang/go/commit/b12e341616365cafd6f7eab9aaaa29c4155c1a76#diff-e85f2dbad3447c4267e815cc9d014e69 中被重构了.

(推测 - 不要 100% 相信它)从提交描述和问题(https://github.com/golang/go/issues/25506)来看,重构似乎是为了在 WebAssembly 后端(https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API)中使用 Fetch API(build flags)。 ).由于这仅适用于 WASM,因此重构代码以拆分两个单独的实现。

关于go - net/http/transport.go 中的 Transport struct 在哪里实现 RoudTripper 接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57342783/

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