我想允許用戶使用github帳戶進行註冊,並顯示所有他/她的私人和公共存儲庫。我能夠從github獲取令牌並獲取存儲庫(公共和私有),但唯一的問題是它不會返回所有的存儲庫(即某些存儲庫不會被提取)。無法通過github API獲取所有存儲庫API
我正在使用golang進行服務器端實現。 使用this方法獲取存儲庫。
我想允許用戶使用github帳戶進行註冊,並顯示所有他/她的私人和公共存儲庫。我能夠從github獲取令牌並獲取存儲庫(公共和私有),但唯一的問題是它不會返回所有的存儲庫(即某些存儲庫不會被提取)。無法通過github API獲取所有存儲庫API
我正在使用golang進行服務器端實現。 使用this方法獲取存儲庫。
默認情況下,所有接受ListOptions
參數的命令都具有PerPage
屬性。爲了獲取所有數據,必須使用Page
屬性遍歷頁面,直到獲得的結果數少於PerPage
。
在圍棋上下的僞代碼,它會是這樣的:
totalResults := []Result{}
for page := 0; ; page++ {
results := fetch current page
totalResults = append(totalResults, results)
if len(results) < per page {
break
}
}
你可以看到ListOptions
結構定義here。
正如robbrit指出的那樣,爲了獲得所有回購,我們必須使用PerPage選項,因爲默認情況下只返回30個回購。這解決了我的問題。
您鏈接到的方法(列表用戶存儲庫)的評論說:「列出指定用戶的**公共**存儲庫」(我強調)。所以「某些庫不被提取」可能是因爲那些不公開。 – ain
您好我已更新鏈接,我正在使用「(* RepositoriesService).List(用戶字符串,opt * RepositoryListOptions)([] Repository,* Response,error)」方法來獲取回購。 –
也請注意,我能夠獲得私人回購,唯一的問題是它沒有返回完整列表。 –