2011-09-24 23 views
6

我正在爲Facebook開發遊戲。我需要一種讓用戶邀請其他人蔘與遊戲的方式。爲此,我使用apprequests對話框。我將用戶重定向到對話框URL,這是我粘在一起,就像這樣:避免錯誤100:應用程序請求對話框中的參數無效(需要有效的重定向URI)

$url = "http://www.facebook.com/dialog/apprequests?app_id=".$id."&message=".urlencode("foobar")."&redirect=".urlencode("http://some.arbitrary.url.com"); 

(當然,有不那麼隨心所欲的論點,但他們仍然期待理智對我來說)在導航到那裏,用戶被「API錯誤代碼:100,API錯誤說明:無效參數,錯誤消息:需要有效的重定向URI」所責備。我搜索了一個解決方案,但似乎所有收到此錯誤的人都忘記了逃脫他們的URL /消息。我還嘗試了一些應該被接受但不帶備註的URL,例如應用程序畫布URL。

有沒有人知道我犯了什麼錯誤?

回答

3

所以更換redirect參數,原來的解決方案是使用redirect_uri不要逃避的URL重定向到,所以我之前寫的代碼應爲:

$url = "http://www.facebook.com/dialog/apprequests?app_id=".$id."&message=".urlencode("foobar")."&redirect_uri="."http://some.arbitrary.url.com"; 
1

嘗試用redirect_uri

+0

API錯誤代碼:191 API錯誤描述:指定的URL不屬於應用程序 錯誤消息:redirect_uri不屬於應用程序。如果我將redirect_uri指向apps.facebook.com/whatever,那就是我所得到的。當我將它指向應用程序所擁有的URL時,我會得到與以前相同的錯誤(100,需要有效的URI)。 –

+0

是您的應用程序擁有的URL嗎? (即您的應用程序域名爲whatever.com,網址必須是something.whatever.com/something) – Igy

+0

是的。這實際上是我在開發人員應用程序中輸入的確切URL。實際上,我認爲這也可能是一個問題,所以我輸入了一些應用程序沒有擁有的任意URL,以查看我會受到哪些錯誤,然後收到「redirect_uri不屬於應用程序」。 –

0

從我的這個錯誤的經驗;無論引起錯誤的參數如何,facebook都會給出相同的錯誤。 我的問題是,我沒有使用encodeURIComponent(contentParam);所有的參數,所以任何參數中的任何特殊字符給了我上述錯誤。

相關問題