我尝试使用Go访问Soundcloud API失败了。对于Soundcloud不直接支持的任何语言,他们的API非常复杂。如果有人有任何资源或代码示例,如果有人与我分享,我会很感激。
我的代码如下:
func main() {
v := url.Values{}
v.Set("scope", "non-expiring")
v.Set("client_id", auth.ClientID)
v.Set("response_type", "code")
v.Set("redirect_uri", auth.RedirectURI)
c.AuthURL = AuthEndpoint + "?" + v.Encode()
c.Values = v.Encode()
res := c.Request("POST", url.Values{})
}
func (c *Client) Request(method string, params url.Values) []byte {
params.Set("client_id", "*************")
reqUrl := "https://api.soundcloud.com/oauth2/token"
req, _ := http.NewRequest(method, reqUrl, strings.NewReader(c.Values))
req.Header.Add("Accept", "application/json")
resp, _ := c.client.Do(req)
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
return body
}
答案 0 :(得分:1)
我正在积极开发一个包,用于访问/使用Soundcloud API,它具有OAuth2支持,并且已经可以使用。
我邀请你去寻找。 https://github.com/njasm/gosoundcloud
考虑到该软件包仍在大量开发中,API可能会在未来发生变化。
答案 1 :(得分:0)
您可以查看yanatan16/golang-soundcloud,即使身份验证部分尚未实施(see issues)
虽然有oauth class 为了获取SoundCloud对象,还有很多其他API调用。