2013-10-15 63 views
-2

我正在測試我的應用程序localhost。當我點擊登錄FB我得到一個錯誤給定的URL不被應用程序配置允許:localhost

> Given URL is not allowed by the Application configuration.: One or more of the given URLs is not allowed by the App's settings. It must match the Website URL or Canvas URL, or the domain must be a subdomain of one of the App's domains. 

我提到this question,但它是關於網上申請。在這裏我想在本地進行測試。我應該在應用域名

我的應用程序名稱說http://localhost/fblogin.和什麼應該是redirect_url

我試着給應用程序域http://localhost/fblogin但它給我像

> App Domains: `https://localhost/fblogin` should not contain protocol information. 
+0

_「不應該包含協議信息」_ - 以及你有什麼問題的理解?不知道協議是什麼,並且域名與URL不同? – CBroe

+0

域名只是'localhost',沒有別的。 – CBroe

回答

2

錯誤我才能夠測試的Facebook通過建立虛擬主機URL本地應用程序。如果你對虛擬主機不熟悉,其基本效果是,當你在計算機上指定瀏覽器的某個URL時(如果你願意,可以是www.yahoo.com),它指向本地的目錄,而不是在互聯網上尋找該網址。通過這種方式,您可以在保持本地的同時向Facebook提供它想要的http:// URL。我可以使用以下tutorial在我的Mac上設置虛擬主機。

+0

通過'localhost'進行測試不是問題,只要沒有涉及到需要Facebook實際請求數據(如開放圖形對象)的數據 - 使用它來測試登錄等功能完全正常,我使用它在開發應用程序時一直都是這樣。 – CBroe

2

我建議你添加一個開發子域並將它指向你的本地主機。

在Mac OSX編輯/ etc /主機在終端

sudo vi /etc/hosts 

然後將下面的行添加到該文件的末尾(替換 「mydomain.com」 相應地)

127.0.0.1 dev.mydomain.com 

然後保存,打ESC鍵

:wq 

然後清空緩存

dscacheutil -flushcache 

現在域添加到您的Facebook應用程序域

MyFacebookApp -> Settings -> Basic -> App Domains 

現在不是使用

http://localhost:3000 

來測試您的應用程序,嘗試

http://dev.mydomain.com:3000 

(假設3000端口)

應該工作:)

+0

我已經嘗試了很久,但對我來說它沒有工作:( –

+0

也許我可以幫忙,...你還有興趣嗎?你在OSX或Windows? – Will

+0

是的,我很感興趣...我使用Ubuntu和我已經設置我的主機文件與127.0.0.1 dev.mydomain.com,我正在訪問它從相同的網址是dev.mydomain.com –

相關問題