gpt4 book ai didi

rest - Soundcloud API Auth 通过 Golang 401 错误

转载 作者:IT王子 更新时间:2023-10-29 01:59:55 26 4
gpt4 key购买 nike

我正在尝试连接到 Soundcloud API 并在 Golang 中获取 token ,但我收到 401 errr 消息,“error”:“invalid_client”。

我已经验证了客户端 ID 和密码。

我的重定向 URI 存在并且是:

http://localhost:8080/platform/soundcloudCallback.html

我的代码如下:

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
}

是我在 NewRequest 中的正文不正确还是其他原因导致了问题?目前还不清楚 localhost 如何与 API 配合使用。

解决方案是确保您具备以下所有条件:

v.Set("scope", "non-expiring")
v.Set("client_id", auth.ClientID)
v.Set("client_secret", "f5e416ddf95aed8d077fccccc0a07821")
v.Set("response_type", "code")
v.Set("redirect_uri", auth.RedirectURI)
v.Set("grant_type", "authorization_code")

对于坚持这一点的任何人,我在 blog.rileedesign.com 上写了一篇博客文章,详细介绍了所有内容。

最佳答案

我不知道你的身份验证过程是否正确。首先,您需要在 SoundCloud 上设置一个应用程序 - 您已经完成了,因为您有一个客户端密码和一个客户端 ID。

然后您打开 SoundCloud 登录页面,输入您的用户名和密码,然后(如果您成功登录)您将被重定向到带有授权代码的重定向 URI。该代码非常重要,因为使用该代码您可以获得访问 token 。

如果你输入

v.Set("grant_type", "authorization_code")

您还需要设置授权码:

v.Set("code", AUTHORIZATION_CODE)

之后,您将从 SoundCloud 收到带有访问 token 、刷新 token 等的响应。

编辑:

因此,例如您的重定向 URI 看起来像这样

http://redirect.uri

然后,当用户身份验证成功时,您将被重定向到包含身份验证代码的 URI。它看起来像这样:

http://redirect.uri/?code=AUTHENTICATION_CODE

然后你向

发出一个POST请求
https://api.soundcloud.com/oauth2/token

包括您的身份验证代码、客户端 ID 和客户端密码。响应将包括访问 token 、刷新 token 等。

关于rest - Soundcloud API Auth 通过 Golang 401 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25208459/

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