0

我正在编写一个命令行工具,用于使用 Go 访问Medium.com 的 API。他们也为 golang 发布了这个 SDK

我已经按照说明进行操作,直到可以使用秘密状态、重定向 url 和范围构建 url。

package main

import (
    "fmt"
    "net/http"

    "github.com/Medium/medium-sdk-go"
)

func check(e error) {
    if e != nil {
        panic(e)
    }
}

func mediumAuth() {
    m := medium.NewClient("clientIDString", "clientSecretString")

    url := m.GetAuthorizationURL("supersecretstring", "http://hasit.me/callback/medium", medium.ScopeBasicProfile, medium.ScopePublishPost)

    //next step
}


func main() {
    mediumAuth()
}

下一步是打开 url,让用户授予访问他/她的个人资料的权限。我可以成功打开网址。

exec.Command("open", url).Start()

现在,一旦用户点击 url,我如何获取重定向的 url?我什至尝试使用 http GET,但响应不是我想要的。

resp, err := http.Get(url)

如果答案很明显,我很抱歉,但这将是我第一个使用任何语言的 API 的程序。帮助将不胜感激。

4

1 回答 1

3

需要发生的重要转变是围绕你的问题how can I fetch the redirected url,因为答案是:你没有。媒体将发布到此 URL。您需要在某处有一个网络服务器来侦听此 URL 并解析响应。

由于您正在编写 CLI 工具而不是 Web 服务,因此这可能是不合适的身份验证方式:Medium 提供了用于桌面应用程序的自发行访问令牌。

于 2015-12-27T01:08:11.127 回答