403 संदेश: विरासत लोक एपीआई परियोजना में इस्तेमाल नहीं किया गया है


14

Google API सक्रिय है, लेकिन त्रुटि देता है; लीगेसी पीपल एपीआई परियोजना में पहले इस्तेमाल नहीं किया गया है या इसे अक्षम किया गया है। इसे https://console.developers.google.com/apis/api/legacypeople.googleapis.com/overview?project= पर जाकर फिर से सक्षम करें । यदि आपने हाल ही में इस API को सक्षम किया है, तो हमारे सिस्टम को प्रचारित करने और पुनः प्रयास करने के लिए कुछ मिनट प्रतीक्षा करें।


अनुरोध के लिए आपके Google खाता नंबर की आवश्यकता होती है, अन्यथा, कनेक्शन विफल हो जाएगा।
jdweng

मैंने आपकी आईडी कोड फॉर्म के साथ चलाई है और यह कुंजी को अमान्य कहता है: stackoverflow.com/questions/34597229/…
jdweng

क्यों ? लेकिन क्लाइंट आईडी सत्य है
ARmer ARGIN

2
मेरे पास बिल्कुल वही त्रुटि है, यह पिछले सप्ताह से शुरू हुआ था। क्या आपको तय करने का कोई तरीका मिला है? मुझे लगता है कि मेरे ClientId रिकॉर्ड के साथ Google की ओर से कुछ गलत हुआ ... शायद वे कुछ काम कर रहे थे और हमें "साइड-इफेक्ट" मिला?
Axel186

2
क्या किसी ने इस त्रुटि का हल खोजने का प्रबंधन किया? मैं सिर्फ Google साइन-इन लागू करने का प्रयास कर रहा हूं और त्रुटि अभी भी जनवरी 2020 तक होती है। कोई भी?
Regan

जवाबों:


6

आपको किसी अन्य APIs जैसे Google Drive API, Google Sheets API या Google+ API को छोड़कर अन्य को स्थापित करने की आवश्यकता नहीं है,

"पासपोर्ट-Google-oauth" के कारण त्रुटि आ रही है: "^ 1.0.0"

बस संस्करण "पासपोर्ट-google-oauth": "^ 1.0.0" को "पासपोर्ट-google-oauth" में बदल दें: "^ 2.0.0" और नोड_मॉडल और पैकेज हटाएं। json फ़ाइल और "npm i" चलाएँ।

बस


आपने धमाल मचाया! धन्यवाद! मैं वास्तव में उपयोग कर रहा था passport-google-oauth20@1.0.0, इसलिए मैंने इसे हटा दिया और 2.0आपके उत्तर को पढ़ने के बाद संस्करण स्थापित किया और इसने काम किया।
डैनियल

धन्यवाद आदमी यह काम करता है, आप शमर
भागवत लांडे

2

7 मार्च, 2019 को Google+ एपीआई शटडाउन से पहले , व्यक्ति.get और People.getOpenIdConnect विधियाँ किसी व्यक्ति की प्रोफ़ाइल का अनुरोध करने के लिए उपलब्ध थीं।

साइन-इन का समर्थन करने वाले इन तरीकों के साथ मौजूदा एकीकरण को तोड़ने से बचने के लिए, एक नया न्यूनतम कार्यान्वयन केवल उस कार्यक्षमता के लिए आवश्यक बुनियादी क्षेत्र लौटाता है, जैसे कि नाम और ईमेल पता, यदि उपयोगकर्ता द्वारा अधिकृत है। लीगेसी पीपल एपीआई वह जगह है जहां ये तरीके मौजूदा HTTP एंडपॉइंट पर मौजूदा कॉलर्स के लिए उपलब्ध रहेंगे।

लीगेसी पीपल एपीआई एक सीमित नया कार्यान्वयन है जो कि लीगल Google+ API people.get और people.getOpenIdConnect तरीकों को साइन-इन कार्यक्षमता बनाए रखने के लिए आवश्यक है। यह मूल तरीकों के मौजूदा कॉलर्स के लिए उपलब्ध है , जो Google+ API शटडाउन के समय Google साइन-इन या Google पीपल एपीआई जैसे अनुशंसित प्रतिस्थापनों में नहीं गए हैं ।

यहां लिंक विवरण दर्ज करें

धन्यवाद


1

इस मामले में, मैं उसी मुद्दे का सामना कर रहा हूं। यह वही है जो मैंने इसे ठीक करने के लिए किया है।

परिस्थिति:

  • NodeJS ver 8
  • "पासपोर्ट-google-oauth": "^ 1.0.0"
  • Google साइन-इन के रूप में Google+ एपीआई का उपयोग करना

जब मैं एप्लिकेशन चलाता हूं और Google के साथ साइन इन पर क्लिक करता हूं, तब क्या हुआ था?

मैं इसे कैसे हल करूं?

  • Google कंसोल पर जाएं
  • सामाजिक एपीआई के तहत Google+ एपीआई पर क्लिक करें, फिर सक्षम एपीआई पर क्लिक करें
  • G Suite के तहत Google ड्राइव API पर क्लिक करें, फिर Enable API पर क्लिक करें
  • जी सूट के तहत Google शीट एपीआई पर क्लिक करें, फिर सक्षम एपीआई पर क्लिक करें
  • अद्यतन "पासपोर्ट-गूगल-ऑउथ": "^ 1.0.0" से "पासपोर्ट-गूगल-ओओथ": "^ 2.0.0" में package.json
  • पैकेज- lock.json और node_modules फ़ोल्डर निकालें (यह सुनिश्चित करने के लिए कि सब कुछ स्पष्ट है)
  • इस कमांड को चलाएं: npm इंस्टॉल करें
  • यह अब काम करता है!

नोट: मेरा पिछला कोड अभी भी प्रोफ़ाइल का उपयोग कर रहा है ।_json.image.url प्रोफ़ाइल छवि प्राप्त करने के लिए। दरअसल, यह प्रतिक्रिया अब नहीं थी। इसलिए मैं इस कोड को हटा देता हूं। अलविदा Google+ आपको Google लोग एपीआई धन्यवाद।


इससे मुझे एक त्रुटि There was an error while loading /apis/api/legacypeople.googleapis.com/overview?project=xxxx. Please try again.
मिलती है

क्या आपने चरणों का पालन किया है?
बॉबी

0

Google संपर्क API और Google+ API को सक्षम करना मेरे लिए इस समस्या को निर्धारित करता है।


नमस्ते, यह क्रिया आपके द्वारा किए जाने के समय तक मान्य होनी चाहिए। अब तक (2020) Google+ API पूरी तरह से नए प्रोजेक्ट्स के लिए डिमोशन हो गया है।
avi.elkharrat

0

नमस्ते मैं हाल ही में एक ही मुद्दे पर ठोकर खाई। जैसा कि इलन लालम द्वारा समझाया गया है, Google+ एपीआई के रूप में नई परियोजनाओं के लिए पूरी तरह से decommissioned है।

मैंने पाया कि Google People API इसी तरह से काम करता है। निम्न उदाहरण जीसीपी में बुकशेल्फ़ ट्यूटोरियल पर आधारित है । स्रोत कोड यहां देखा जा सकता है: https://github.com/GoogleCloudPlatform/golang-samples/tree/appengine/go111/cloudsql/getting-started/bookshelf (शाखा appengine/go111/cloudsql)

import people "google.golang.org/api/people/v1"

...

// retrieves the profile of the user associated with the provided OAuth token
func fetchProfile(ctx context.Context, tok *oauth2.Token) (*people.Person, error) {
peopleService, err := people.NewService(ctx, option.WithTokenSource(bookshelf.OAuthConfig.TokenSource(ctx, tok)))
if err != nil {
    return nil, err
}

return peopleService.People.Get("people/me").
    PersonFields("names,coverPhotos,emailAddresses").
    Do()
}

इस विधि को एक संदर्भ और OAuth टोकन की आवश्यकता है, ठीक उसी तरह जैसे कि Google+ API का उपयोग किया जाता है। peopleServiceइसी तरह से आरंभ नहीं हो जाता।

peopleService.People.Get("people/me")एक प्रश्न है कि जुड़ा उपयोगकर्ता के प्रोफ़ाइल को हासिल करेगा तैयार करता है। फिर PersonFields("names,coverPhotos,emailAddresses")प्रोफ़ाइल फ़ील्ड पर एक फ़िल्टर है। अनुरोध का यह हिस्सा अनिवार्य है। आखिरकार Do()अनुरोध निष्पादित करेगा।


0

का उपयोग कर इस समस्या को ठीक किया जा सकता है passport-google-token

npm install passport-google-token

const GoogleStrategy = require('passport-google-token').Strategy;

// Google OAuth Strategy
passport.use('googleToken', new GoogleStrategy({
    clientID: CLIENT_ID,
    clientSecret: CLIENT_SECRET
}, async (accessToken, refreshToken, profile, done) => {
    try {
        console.log('creating a new user')
        const newUser = new User({
            google: {
                id: profile.id,
                email: profile.emails[0].value
            }
        });

        await newUser.save();
        done(null, newUser);
    } catch (error) {
        done(error, false, error.message);
    }
}));
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.