【发布时间】:2020-05-24 09:46:37
【问题描述】:
可以看到的错误是 client.GetKeyStats 函数返回的 403 Forbidden。
基于源代码无需认证。 源代码:https://github.com/timpalpant/go-iex "你感到恐慌的原因是直接在这个函数中引发了恐慌。
package main
import (
"fmt"
"github.com/timpalpant/go-iex"
"html/template"
"net/http"
)
func process(w http.ResponseWriter, r *http.Request) {
client := iex.NewClient(&http.Client{})
symbols := []string{"AAPL", "SPY"}
stat, err := client.GetKeyStats(symb)
if err != nil {
panic(err)
}
var s []string
for _, symb := range symbols {
s = append(s, fmt.Sprintf("DividendYield: %s", stat.DividendYield))
}
t, _ := template.ParseFiles("Dividends.html")
t.Execute(w, s)
}
func main() {
server := http.Server{
Addr: "127.0.0.1:8080",
}
http.HandleFunc("/process", process)
server.ListenAndServe()
}
可以看到的错误是 client.GetKeyStats 函数返回的 403 Forbidden。您是否需要以某种方式对该客户端进行身份验证? 无论哪种方式,这似乎都不是 Go 作为一门语言的相关问题。”
2020/01/27 03:34:59 http: 恐慌服务 127.0.0.1:54063: 403 禁止:禁止
。 goroutine 19 [运行]: net/http.(*conn).serve.func1(0xc000162820) /usr/local/opt/go/libexec/src/net/http/server.go:1767 +0x139 恐慌(0x1442140,0xc0002defb0) /usr/local/opt/go/libexec/src/runtime/panic.go:679 +0x1b2 主进程(0x158d1e0,0xc0001ba000,0xc0001a8000) /Users/ed/Documents/Coding/Golang/src/web/web.go:18 +0x373 net/http.HandlerFunc.ServeHTTP(0x150b0d0, 0x158d1e0, 0xc0001ba000, 0xc0001a8000) /usr/local/opt/go/libexec/src/net/http/server.go:2007 +0x44 net/http.(*ServeMux).ServeHTTP(0x18d3180, 0x158d1e0, 0xc0001ba000, 0xc0001a8000) /usr/local/opt/go/libexec/src/net/http/server.go:2387 +0x1bd 网络/http.serverHandler.ServeHTTP(0xc0001640e0, 0x158d1e0, 0xc0001ba000, 0xc0001a8000) /usr/local/opt/go/libexec/src/net/http/server.go:2802 +0xa4 net/http.(*conn).serve(0xc000162820, 0x158dce0, 0xc00019e000) /usr/local/opt/go/libexec/src/net/http/server.go:1890 +0x875 由 net/http.(*Server).Serve 创建 /usr/local/opt/go/libexec/src/net/http/server.go:2928 +0x384 2020/01/27 03:34:59 http: 恐慌服务 127.0.0.1:54064:403 禁止:禁止 goroutine 20 [运行]: net/http.(*conn).serve.func1(0xc0001628c0) /usr/local/opt/go/libexec/src/net/http/server.go:1767 +0x139 恐慌(0x1442140,0xc0003cab90) /usr/local/opt/go/libexec/src/runtime/panic.go:679 +0x1b2 主进程(0x158d1e0,0xc00022d420,0xc0001a6000) /Users/ed/Documents/Coding/Golang/src/web/web.go:18 +0x373 net/http.HandlerFunc.ServeHTTP(0x150b0d0, 0x158d1e0, 0xc00022d420, 0xc0001a6000) /usr/local/opt/go/libexec/src/net/http/server.go:2007 +0x44 net/http.(*ServeMux).ServeHTTP(0x18d3180, 0x158d1e0, 0xc00022d420, 0xc0001a6000) /usr/local/opt/go/libexec/src/net/http/server.go:2387 +0x1bd 网络/http.serverHandler.ServeHTTP(0xc0001640e0, 0x158d1e0, 0xc00022d420, 0xc0001a6000) /usr/local/opt/go/libexec/src/net/http/server.go:2802 +0xa4 net/http.(*conn).serve(0xc0001628c0, 0x158dce0, 0xc0000a0340) /usr/local/opt/go/libexec/src/net/http/server.go:1890 +0x875 由 net/http.(*Server).Serve 创建 /usr/local/opt/go/libexec/src/net/http/server.go:2928 +0x384 2020/01/27 03:34:59 http: 恐慌服务 127.0.0.1:54066:403 Forbidden: Forbidden goroutine 47 [运行中]:
【问题讨论】:
标签: go