2012-01-23 11 views
13

के साथ संगठन से निजी रिपोज प्राप्त करना मुझे निजी रिपोज़ प्राप्त करने और व्यवस्थित करने में समस्या हो रही है। मैं इस विधि के साथ एपीआई वी 3 का उपयोग कर रहा हूं: http://share.jjnford.com/HhIZगिटहब एपीआई वी 3

मैं jQuery.getJSON कमांड का उपयोग कर रहा हूं और एपीआई यूआरएल में अपना ओएथ 2 एक्सेस टोकन पास कर रहा हूं लेकिन केवल सार्वजनिक भंडार लौटा रहा हूं।

अगर मैं किसी उपयोगकर्ता खाते (संदर्भ) में एक निजी संगठन भंडार काटता हूं और उपयोगकर्ताओं को रिपोजिटरी खींचता हूं तो सभी रिपोज़ (सार्वजनिक निजी) एक संगठन से फंसे निजी रिपो को छोड़कर दिखाया जाता है।

किसी को भी मुझे पहले से इस के साथ मदद कर सकते हैं ... यह मेरा आखिरी बाधा है ...

धन्यवाद!

उत्तर

3

मुझे समस्या मिली है और इसे ठीक किया गया है। GitHub API V3 there are multiple scopes के अनुसार उपयोग किया जा सकता है। ऐसा लगता है कि "उपयोगकर्ता" दायरा अब मान्य नहीं है। एक बार जब मैंने केवल "रेपो" स्कोप का उपयोग किया, तो सब कुछ ठीक से पुनर्प्राप्त किया गया (निजी संगठन रेपो, और निजी फोर्कड ऑर्ग रेपो)।

+0

जो दस्तावेज़ आप लिंक कर रहे हैं वह कहता है 'उपयोगकर्ता' एक वैध दायरा है। क्या आप वास्तव में जानते हैं कि आपके परिवर्तन क्यों काम करते थे या क्या आप अनुमान लगा रहे हैं कि दस्तावेज़ गलत हैं? – mikemaccana

0

मुझे उस समय के लिए सही उत्तर नहीं मिला, और मैं अपने आवेदन के लिए बहुत अधिक है क्योंकि यह "रेपो" के दायरे से नहीं पूछना चाहता, यह कोड पढ़ने/लिखने के लिए पूछताछ करता है। यहां मेरे लिए क्या काम किया गया है (मैं ओक्टोकिट मणि() के साथ रुबी का उपयोग कर रहा हूं), इथ के लिए विशेष धन्यवाद धन्यवाद,

1.- ओथ के दौरान, "पढ़ने: संगठन" दायरे के लिए पूछें और Github

से Oauth 2 का टोकन प्राप्त

2.- octokit के ग्राहक को प्रारंभ:

client = Octokit::Client.new(access_token: my_oauth2_token) 

3.- उपयोगकर्ता के संगठनों को पुनः प्राप्त है, हम की वजह से यह कर सकते हैं: गुंजाइश "पढ़ें ऑर्ग"

organizations = client.organizations 

4.- प्रत्येक संगठन के लिए, एक गिथब व्यवस्थापक टीम पुनर्प्राप्त करें जिसमें यह उपयोगकर्ता संबंधित है। और फिर, रेपोस उपलब्ध

organizations.each do |organization| 
    admin_team = client.organization_teams(organization[:id]).select { |repo| repo[:permission] == 'admin' }.first 
    org_repos << client.team_repositories(admin_team[:id]) 
end 

हाँ पुनः प्राप्त करने के लिए इस टीम का उपयोग करें, आप निश्चित रूप से सभी उपलब्ध रेपोस इकट्ठा करने के लिए और अधिक अनुरोध की आवश्यकता होगी, लेकिन जैसा कि मैंने पहले भी कहा है, मेरे मामले में, मुझे नहीं लिए पूछने के लिए करना चाहता था "उपयोगकर्ता" गुंजाइश।

नोट: हां, उपयोगकर्ता को किसी दिए गए संगठन के भीतर "व्यवस्थापक" टीम का सदस्य होना चाहिए ताकि निजी प्रतिनिधि देख सकें।

संबंधित मुद्दे