無法在Facebook上創建由於錯誤「無法驗證提供的URL」Facebook的網絡掛接應用程序的創建由於未能「無法覈實所提供的網址」
- 的URL,鑑於網絡掛接廣告應用程式回調正在從瀏覽器的罰款HTTPS端口443
servlet代碼到收到來自網絡掛接後調用如下
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("**************Entering Callback Servlet**************************"); Map<String, String[]> parametersMap = request.getParameterMap(); if (parametersMap.size() > 0) { if (request.getParameter("hub.mode").equals("streamInit")) { System.out.println("Verify Token: " + request.getParameter("hub.verify_token")); System.out.println("Challenge number:" + request.getParameter("hub.challenge")); String responseToClient = request.getParameter("hub.challenge"); response.setStatus(HttpServletResponse.SC_OK); response.getWriter().write(responseToClient); response.getWriter().flush(); response.getWriter().close(); response.getWriter().append("Fetch-Mode").append(request.getParameter("hub.mode")); response.getWriter().append("App Verify Token:").append(request.getParameter("hub.verify_token")); response.getWriter().append("App Challenge No").append(request.getParameter("hub.challenge")); System.out.println("**************Callback Successful**************************"); } //response.getWriter().append("Served at: ").append(request.getContextPath()); }else{ System.out.println("**************Not an Facebook POST**************************"); } System.out.println("**************Exiting Callback Servlet**************************"); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); }
需要幫助,我在這裏失蹤。
雖然你不是真的在使用IP'0.0.0.0',對嗎?您不能爲此使用本地IP地址,它必須是可公開訪問的URL。 (而且我不確定IP地址是否可以工作 - 在大多數情況下,Facebook需要具有主機名的URL。) – CBroe
不,我不是。使用0.0.0.0。我有一個公共URL並且它可以訪問。但是我沒有簽名的SSL證書,正如markus所說的那樣。我現在處於死衚衕:) –
是的,的確如此,現在您需要提供一個HTTPS網址。獲得有效的SSL證書的便宜而簡單的方法是https://letsencrypt.org/,但它要求您的服務器一起玩(讓您使用其客戶端來處理域驗證。)如果這不是一個選項, https://www.startssl.com/也爲個人提供免費證書。 – CBroe