2 回答
TA贡献1801条经验 获得超8个赞
不幸的是,链接的文档并没有完全解释为什么您的代码不起作用。在 App Engine 上,您需要使用包http.Transport
提供的特殊功能urlfetch
;请参阅https://cloud.google.com/appengine/docs/go/urlfetch/
TA贡献1813条经验 获得超2个赞
找到了解决办法。下面的代码为我完成了任务。
func FetchVideos(w http.ResponseWriter, r *http.Request) {
var service *youtube.Service
ctx := appengine.NewContext(r)
transport := &transport.APIKey{
Key: apiKey,
Transport: &urlfetch.Transport{Context: ctx}}
client := &http.Client{Transport: transport}
var err error
service, err = youtube.New(client)
if err != nil {
log.Println("ERROR in creating youtube New client ", err)
}
var items *youtube.PlaylistItemListResponse
if items, err = service.PlaylistItems.List("snippet").PlaylistId("PLHyTuYqPkZCzt7mWZ4hmmrRdjLJiw6O2T").Do(); err != nil {
log.Println("Error in fetching playlist items ", err)
}
log.Println(Jsonify(items))
- 2 回答
- 0 关注
- 165 浏览
添加回答
举报