使用 go 包时如何检查响应 headers
How to check response headers when using go package
当我达到速率限制时,我得到一个 error
实现,告诉我检查响应 header 以获取更多详细信息。
当我检查包裹时,我看到错误定义如下:
type APIError struct {
Code int `json:"code,omitempty"`
Detail string `json:"detail,omitempty"`
Duration Duration `json:"duration,omitempty"`
Exception string `json:"exception,omitempty"`
ExceptionFields map[string][]interface{} `json:"exception_fields,omitempty"`
StatusCode int `json:"status_code,omitempty"`
}
我如何能够从中访问请求 header 信息?会在ExceptionFields
内归还吗?我想按照建议添加指数退避系统,但希望能够使用响应 headers.
应用更智能的退避
我刚刚看到 stream-go2
的最新版本有一个 Rate
字段,我可以用来检查它。
type APIError struct {
Code int `json:"code,omitempty"`
Detail string `json:"detail,omitempty"`
Duration Duration `json:"duration,omitempty"`
Exception string `json:"exception,omitempty"`
ExceptionFields map[string][]interface{} `json:"exception_fields,omitempty"`
StatusCode int `json:"status_code,omitempty"`
Rate *Rate `json:"-"`
}
我会升级我们的依赖
当我达到速率限制时,我得到一个 error
实现,告诉我检查响应 header 以获取更多详细信息。
当我检查包裹时,我看到错误定义如下:
type APIError struct {
Code int `json:"code,omitempty"`
Detail string `json:"detail,omitempty"`
Duration Duration `json:"duration,omitempty"`
Exception string `json:"exception,omitempty"`
ExceptionFields map[string][]interface{} `json:"exception_fields,omitempty"`
StatusCode int `json:"status_code,omitempty"`
}
我如何能够从中访问请求 header 信息?会在ExceptionFields
内归还吗?我想按照建议添加指数退避系统,但希望能够使用响应 headers.
我刚刚看到 stream-go2
的最新版本有一个 Rate
字段,我可以用来检查它。
type APIError struct {
Code int `json:"code,omitempty"`
Detail string `json:"detail,omitempty"`
Duration Duration `json:"duration,omitempty"`
Exception string `json:"exception,omitempty"`
ExceptionFields map[string][]interface{} `json:"exception_fields,omitempty"`
StatusCode int `json:"status_code,omitempty"`
Rate *Rate `json:"-"`
}
我会升级我们的依赖