स्थानीय रूप से फेसबुक कनेक्ट का परीक्षण कैसे करें


193

मैं ASP .NET और Facebook कनेक्ट API का उपयोग करता हूं। लेकिन जब मैं एप्लिकेशन चलाता हूं और कनेक्ट बटन दबाता हूं तो यह वेबसाइट पर वापस आ जाता है कि परीक्षण स्थानीय सर्वर पर नहीं है ( http: // localhost: xxxx / test.aspx ) तो मैं स्थानीय स्तर पर फेसबुक का परीक्षण कैसे कर सकता हूं (यानी मैं कैसे बदल सकता हूं) कॉलबैक यूआरएल)?


4
इसका उत्तर यहाँ है: forum.developers.facebook.com/viewtopic.php?pid=116136 आपको अपने डोमेन को अपने लोकलहोस्ट में लाने के लिए 'C: \ WINDOWS \ system32 \ driver \ etc' होस्ट्स फाइल को संपादित करना होगा
Haytham

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

2
वैसे एक काम के आसपास 3 ऐप्स हैं -> लाइव, क्यूए और देव। तो अगर आपका मुख्य ऐप apps.facebook.com/ohnice/ QA और देव हो सकता है, तो apps.facebook.com/ohnice_qa_sd/ apps.facebook.com/ohnice_dev_fg/ हाँ कुछ यादृच्छिक है, तो आप अनचाहे आगंतुकों को न दें जब आपका घर हो चुस्त नहीं है।
tgkprog

1
@PaulLegato अब (वर्षों बाद ...) किया गया है। परीक्षण सुविधा का उपयोग करके मेरा समाधान या समाधान देखें।
एरडल जी।

जवाबों:


236

यह काफी सरल है जब आपको पता चलता है।

खुला /etc/hosts(यूनिक्स) या C:\WINDOWS\system32\drivers\etc\hosts

यदि आपका डोमेन foo.com है, तो इस पंक्ति को जोड़ें:

127.0.0.1    local.foo.com

जब आप परीक्षण कर रहे हों, तो local.foo.comअपने ब्राउज़र में खोलें और इसे काम करना चाहिए।


4
मैक पर अपनी मेजबानों की फाइल को एडिट करने के लिए अपने टर्मिनल में "sudo pico / private / etc / मेजबान" चलाएं, बचाने के लिए "ctrl X" को एडिट करें और दबाएं
Christoffer

@Christoffer: मेरा मानना ​​है कि / निजी / आदि सिर्फ / etc में एक प्रतीकात्मक लिंक है, इसलिए / etc / मेजबान और / निजी / etc / मेजबान एक ही फ़ाइल है।
फ्रील

1
आप सही कह रहे हैं ... लेकिन हममें से कुछ को चम्मच-फीड करने और "ओपन / वगैरह / होस्ट" कहने की ज़रूरत नहीं है;) एफबी अभी भी मेरे लिए इस समाधान के साथ स्थानीय रूप से विफल हो रहा है। मैं फेसबुक जेएस
क्रिस्टोफर

5
यह मेरे लिए कुछ समय पहले तक काम करता था, लेकिन अब मुझे connection refusedलॉग इन करने की कोशिश करते हुए अपवाद मिल रहे हैं, शायद फेसबुक की तरफ से बदलाव के कारण। किसी भी काम के आसपास के विचारों की बहुत सराहना की जाती है।
onurmatik

1
यदि आप स्थानीय रूप से चल रहे रेल एप्लिकेशन तक पहुंचने के लिए ऐसा कर रहे हैं, तो आपको अपने ब्राउज़र में local.foo.com: 3000` पर जाना पड़ सकता है क्योंकि रेल एप्लिकेशन आमतौर पर उस पोर्ट पर चलते हैं।
डेविड टयूइट

102

अपना एप्लिकेशन www.facebook.com/developers/ पर संपादित करें और "साइट URL" को "http: // localhost / myapppath" पर सेट करें।

जब किया - इसे वापस बदलें।


19
फेसबुक आपके सर्वर पर वापस "कनेक्ट" नहीं करता है। उनका जेएस करता है। और JS आपके ब्राउज़र के संदर्भ में चलता है। जो जानता है कि "लोकलहोस्ट" कहाँ इंगित करता है।
एलेक्स

यह मुझे " लोकलसाइट " जोड़ने की अनुमति नहीं देगा , मुझे यह सुनिश्चित करना था कि मैं वहां एक डॉट था। इसने काम किया: " लोकल.साइट "
पीट

कुछ FB फीचर्स इसके साथ काम नहीं करते हैं। उदाहरण के लिए - FB सर्वरों के लिए उपलब्धियाँ सहेजें। यह HTTPS चाहता है, इसलिए मेरी लोकलहोस्ट ट्रिक काम नहीं कर रही है :(
कोस्तादीन

2
यह देखते हुए कि एप्लिकेशन फार्म पर सत्यापन URL में स्थानीय होस्ट का उपयोग करने की आवश्यकता है लायक है, जैसे http://localhost/myappबजायhttp://myapp
ग्राहम

1
यदि आप एक अन्य पोर्ट का उपयोग करते हैं तो इस पैटर्न का उपयोग करें: लोकलहोस्ट: xxxx ), उदाहरण के लिए: लोकलहोस्ट: 8080
m0z4rt

77

मेरा सुझाव है कि https://developers.facebook.com/apps और सेट पर एक टेस्ट ऐप (केवल देव वातावरण के लिए) बनाएं:Website with Facebook Login संपत्ति आपके स्थानीयहोस्ट: [पोर्ट] सेटिंग्स पर।
यह विकल्प मेजबानों को बदलने की आवश्यकता के साथ ठीक काम करेगा। एक बार लाइव होने के
बाद appId को अपने प्रोडक्शन ऐप में बदलना याद रखें ।

संपादित करें - नवीनतम fb संस्करण में आप इसे settingsटैब के नीचे पाएंगे । यहां छवि विवरण दर्ज करें


2
या बस, देव, मंचन और लाइव के लिए अलग कॉन्फ़िगरेशन फ़ाइलों का उपयोग करें।
क्रिस बैरी

1
किसी भी अधिक के साथ "फेसबुक लॉगिन के साथ वेबसाइट" नहीं मिल सकता है।
ये

5
ऐसा लगता है कि आपको "+ Add Platform" बड़े ग्रे क्षैतिज बटन पर क्लिक करना होगा। वहां आपके पास "वेबसाइट" है
लुसियानो

75

फेसबुक ने टेस्ट वर्जन फीचर जोड़ा है।

सबसे पहले, अपने एप्लिकेशन का एक परीक्षण संस्करण जोड़ें: टेस्ट ऐप बनाएं

टेस्ट ऐप बनाएं

फिर, वेबसाइट के अंतर्गत साइट URL को " http: // localhost " में बदलें , और सहेजें परिवर्तन दबाएं

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

यह सब है, लेकिन सावधान रहें: ऐप आईडी और ऐप सीक्रेट कुंजियाँ आवेदन और इसके परीक्षण संस्करणों के लिए अलग हैं!


सेटिंग पैनल में ऐप डोमेन क्या है। मैं फेसबुक लॉगिन के साथ आयनिक ऐप विकसित कर रहा हूं
चिराग़ थैकर

1
@Ciragthaker यह वह डोमेन है जहां उत्पादन ऐप होस्ट किया जाएगा
Erdal G.

3
यह hostsफ़ाइल के संपादन की तुलना में मेरे मामले में बहुत बेहतर उत्तर है , क्योंकि इसे मेरे परीक्षण सर्वर पर HTTPS का उपयोग करने की आवश्यकता नहीं है।
पेट्र डोलोहि

39

आप कुछ भी मुश्किल नहीं है!

फ़ेसबुक → सेटिंग्स → बेसिक: " लोकलहोस्ट " को " ऐप डोमेन" फ़ील्ड में
लिखें और फिर " + ऐड प्लेटफ़ॉर्म " चुनें " वेब साइट " पर क्लिक करें ।

उसके बाद, " साइट Url " फ़ील्ड में अपना स्थानीयहोस्ट url
(उदा :) लिखेंhttp://localhost:1337/something

यह आपको स्थानीय स्तर पर अपने फेसबुक प्लगइन्स का परीक्षण करने की अनुमति देगा।


1
पथ फ़ाइल में फ़ाइलों के लिए एक समाधान है: /// android_assets / www? फेसबुक साइट url के लिए उस रास्ते को अनुमति नहीं देगा
विग्नेश सुब्रमण्यन

अभी होना चाहिए https
शमौन_वेअर

@Simon_Weaver आपको यह जानकारी कहां से मिली? यह कहीं दस्तावेज है?
कोलीस्टिव्रा


@Simon_Weaver उस लिंक से जिसे आपने भेजा था: "आप अभी भी HTTP का उपयोग" लोकलहोस्ट "पतों के साथ कर पाएंगे, लेकिन केवल तब जब आपका ऐप अभी भी डेवलपमेंट मोड में है।"
कलिस्टिवरा

5

फेसबुक आपके फेसबुक ऐप पर एक डोमेन के रूप में लोकलहोस्ट को सेट करने की क्षमता को बेतरतीब ढंग से निष्क्रिय करता है। मैंने पाया कि सबसे आसान काम मेरे लोकलहोस्ट को वेब पर टनल करना था। यह http://progrium.com/localtunnel/ का उपयोग करके मुफ्त में किया जा सकता है या कस्टम url के साथ (आसान है क्योंकि आपको फेसबुक में url को हर बार बदलना नहीं है) https://showoff.io


3
एक और सुरंग पसंद है ngrok.com
मोहम्मद सेलिम

3

मैं अन्य समाधानों का उपयोग नहीं कर सका ... मेरे लिए जो काम किया गया था वह LocalTunnel.net (https://github.com/danielrmz/localtunnel-net-client) स्थापित कर रहा था, और फिर फेसबुक पर परिणामी यूआरएल का उपयोग कर रहा था।


1

ऐसा लगता है कि एफबी ने ऐप देव पेज को फिर से बदल दिया और "सर्वर आईपी व्हिटेलिस्ट" नामक एक सुविधा को जोड़ा।

  1. अपने ऐप पर जाएं और सेटिंग्स का चयन करें -> उन्नत टैब
  2. अपना सार्वजनिक आईपी प्राप्त करें (Google आपको बताएगा कि क्या आप "व्हाट्सएप माई आईपी")
  3. सर्वर आईपी श्वेतसूची में अपना सार्वजनिक आईपी जोड़ें और नीचे स्थित परिवर्तन सहेजें पर क्लिक करें

क्या होगा अगर विभिन्न स्थानों के कई डेवलपर्स साइट पर काम कर रहे हैं? हम वीएम (वैग्रैंट) का उपयोग करते हैं इसलिए आईपी हर देव के लिए समान है। अफसोस की बात है कि व्हाट्सएप में फेसबुक स्थानीय आईपी का उपयोग करने की अनुमति नहीं देता है। यह काम नहीं करता है।
ProblemsOfSumit

अगर मैं आपकी टिप्पणी पढ़ रहा हूँ तो यह समस्या नहीं होनी चाहिए। आपको अपने सार्वजनिक आईपी में डालने की आवश्यकता है, जो आप कहते हैं कि प्रत्येक डेवलपर के लिए समान है (क्या आपका मतलब यह नहीं है कि समान है)। यदि आपको अलग-अलग आईपी के साथ विभिन्न साइटों पर कई डेवलपर्स मिले हैं, तो आप 1 आईपी के माध्यम से सभी ट्रैफ़िक को रूट करने के लिए वीपीएन का उपयोग कर सकते हैं।
सातवेंस

नहीं, विभिन्न स्थानों पर अलग-अलग मशीनों के लिए सार्वजनिक आईपी निश्चित रूप से समान नहीं है, बस प्रत्येक मशीन पर स्थानीय आईपी समान है। (उदा। लोकलहोस्ट)। मैं कुछ भी रूट नहीं करना चाहता। अभी के लिए मैं FB ऐप में लोकलहोस्ट (सिर्फ एक उदाहरण) का उपयोग कर रहा हूं - जो ठीक काम करता है। लेकिन पेज लाइव होते ही मुझे एक समाधान की आवश्यकता है। फेसबुक एक ऐप के अंदर "टेस्ट-एप्स" बनाने की अनुमति देता है, जो समाधान हो सकता है लेकिन मैंने अभी तक इसकी कोशिश नहीं की है। संपादित करें: ऐसा लगता है कि समाधान है
ProblemsOfSumit

1

कैनवास पेज पर जाएं .. इसे ब्राउज़र में देखें .. एड्रेस बार टेक्स्ट को कॉपी करें। अब अपने फेसबुक ऐप पर जाएं सेटिंग्स एडिट करने के लिए

वेबसाइट में, साइट यूआरएल पेस्ट कि पता

फेसबुक एकीकरण में, उस पते को फिर से कैनवास url में पेस्ट करें

और जहाँ भी आपको कैनवास url या रीडायरेक्ट url की आवश्यकता हो, उसी कोड को ।।

आशा है कि यह मदद करेगा ..


-6

2 एप्लिकेशन बनाएं और

में /initializers/env_variables.rb

if Rails.env == 'development'
    ENV['FB_APP_ID'] = "HERE"
    ENV["FB_SECRET"] = "HERE"
else
    ENV['FB_APP_ID'] = "HERE"
    ENV["FB_SECRET"] = "HERE"
end
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.