2015-12-26 28 views
-1

我正在編寫一個命令行工具,使用Go訪問Medium.com's API。他們也發佈了這個SDK for golang在golang中打開一個url並閱讀重定向的url

我跟隨,直到在那裏我可以建立使用祕密狀態的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。幫助將不勝感激。

回答

2

需要發生的重要變化是圍繞你的問題how can I fetch the redirected url,因爲答案是:你不知道。 Medium將發佈到此URL。你需要有一個網絡服務器監聽這個URL並分析響應。

既然你正在編寫一個CLI工具,而不是一個Web服務,這可能是做認證的不當方式:中等用於桌面應用提供Self-Issued Access Tokens

+0

謝謝。我將採用'自行頒發訪問令牌'路線。 –