2012-08-15 13 views
26

द्वारा GitHub उपयोगकर्ता नाम प्राप्त करें इस लिंक मैं देख सकता हूँ कि मेरे (tonylampada) GitHub पर आईडी 218821 https://api.github.com/users/tonylampadaआईडी

है मैं विपरीत कर सकता है कैसे ले रहे हैं? उपयोगकर्ता आईडी = 218821 को देखते हुए, उपयोगकर्ता नाम क्या है?


अद्यतन

यहाँ nulltoken उत्तर देना है क्योंकि यह एक लंबी कहानी है और यह एक टिप्पणी में फिट नहीं होगा।

FreedomSponsors एक django एप्लिकेशन है जो गीथूब (और अन्य) के साथ लॉगिन सक्षम करने के लिए django-social-auth का उपयोग करता है। (आपको इसे देखना चाहिए, बीटीडब्ल्यू, कृपया ब्लॉग में about page देखें :-) Django-social-auth में कॉन्फ़िगरेशन ध्वज है जो एप्लिकेशन को डेटाबेस पर github उपयोगकर्ता नाम संग्रहीत करने की अनुमति देता है। कुछ दिन पहले मैंने जीथब लॉगिन सक्षम के साथ एफएस का एक नया संस्करण तैनात किया था, लेकिन "storeGithubUsername" के साथ गलत पर सेट किया गया था।

कुछ उपयोगकर्ताओं ने अपने github खातों को पंजीकृत किया है, और अब डेटाबेस में उनके github आईडी हैं, लेकिन उनके उपयोगकर्ता नाम नहीं हैं।

आप my profile में बैठ सकते हैं कि मेरे पास "कनेक्ट खाता" के रूप में जिथब है लेकिन मेरे जीथब पेज के लिए कोई लिंक नहीं है।

मैं इसे करने के लिए https://github.com/tonylampada

मैं, कि यह ठीक करता है एक नया संस्करण को तैनात करने की "storeGithubUsername" की स्थापना द्वारा तैयार (कि यह क्या कहा जाता है नहीं है हूँ लिंक बिंदु बनाने की जरूरत है, मैं सिर्फ सरल बनाने रहा हूँ यहां) सच है। लेकिन मैं पहले से ही github- पंजीकृत उपयोगकर्ताओं के साथ डेटाबेस पैच करना चाहता हूं। मेरे पास उनके github आईडी हैं, लेकिन उनके github उपयोगकर्ता नाम नहीं है।

+0

आपको इसकी आवश्यकता क्यों होगी? – nulltoken

+0

लंबी कहानी ... प्रश्न को अद्यतन किया। कृपया, उत्तर जानें: ओ) –

+0

तो मुझे लगता है कि आईडी से उपयोगकर्ता नाम प्राप्त करने का कोई तरीका नहीं है .. सही? – Lipis

उत्तर

30

नहीं होगा हम स्थिति है जहाँ से निपटने के लिए Gitter पर ऐसा करने की जरूरत किसी उपयोगकर्ता ने अपना उपयोगकर्ता नाम गिटहब पर बदल दिया है और हमारे पुराने उपयोगकर्ता नाम से पूछताछ करते समय हमें 404 प्रतिक्रिया मिलती है।

यहां एक अनियंत्रित एंडपॉइंट है, इसलिए अपने जोखिम के रूप में उपयोग करें, लेकिन यह अभी काम करता है।

एंडपॉइंट का उपयोग करें: https://api.github.com/user/:id, जहां :id उपयोगकर्ता की आईडी है।

https://api.github.com/repositories/:id और https://api.github.com/organizations/:id पर क्रमशः रिपो और orgs के लिए समान अंत बिंदु मौजूद हैं।

ध्यान दें कि नया repository redirects preview API केवल रिपॉजिटरीज़ का समर्थन करता है, जिसका नाम बदलकर उपयोगकर्ता या संगठन नहीं है। वास्तव में, HTTP 301 रीडायरेक्ट वास्तव में https://api.github.com/repositories/:id पर इंगित करता है, इसलिए एक अच्छा मौका है कि ये "आईडी" अंतराल वास्तव में जल्द ही आधिकारिक हो सकते हैं।

+1

धन्यवाद! मैंने परीक्षण किया और यह काम करता है। मैंने इसे सही उत्तर के रूप में अपडेट किया। –

+2

यह अब और काम नहीं करता है, कम से कम यह लिखने पर काम नहीं करता है। – noun

+2

यह लिखने पर यहां काम करता है। – fiatjaf

8

कोई दस्तावेज सुविधा नहीं है, न ही गैर-दस्तावेज वाले जिन्हें मैं जानता हूं, जो आईडी से उपयोगकर्ता नाम की पुनर्प्राप्ति का पर्दाफाश करते हैं। गिटहब एपीआई उपभोक्ता परिप्रेक्ष्य से, उपयोगकर्ता आईडी एक "कार्यान्वयन विस्तार" है। वास्तविक कुंजी उपयोगकर्ता नाम है।

जो मैं समझता हूं उससे आपको केवल आईडी नामों के दिए गए उपयोगकर्ता नामों के बैच की आवश्यकता होती है। और यह केवल एक बार अनुरोध होगा, स्थायी आवश्यकता नहीं।

जैसा कि आपका अनुरोध वैध और सीमित है, इसके दायरे में, आपको यह जवाब सीधे gitHub समर्थन से [email protected] पर ईमेल छोड़कर प्राप्त हो सकता है।

दरअसल, xpaulbettsx, एक GitHubber, यहां तक ​​कि tweeted about this:

समर्थन @ कुछ भी आप GitHub बताना चाहता हूँ के लिए अच्छा है - कीड़े, सुविधाओं, उच्च 5s; सब कुछ है, लेकिन सुरक्षा जो @

+0

अच्छी तरह से उपयोगकर्ता नाम "वास्तविक कुंजी" है, यह बदल सकता है, जो समस्याग्रस्त हो सकता है। – My1

+0

एपीआई [प्रदान] क्यों करता है (https://stackoverflow.com/a/17309026/4854931) एक आईडी? – Alex78191

0

सुरक्षा के लिए जाना आप http://ghtorrent.org/dblite/ से कुछ उपयोगकर्ताओं के बारे में कुछ जानकारी प्राप्त करने में सक्षम हो सकता है, लेकिन यह वास्तविक समय