Spring Social 的 ConnectController 的自动配置不工作

automatic configuration of Spring Social’s ConnectController not working

我按照以下站点中给出的步骤创建了一个简单的 spring 引导应用程序,该应用程序使用 maven 和 spring 引导访问 facebook 数据。

http://spring.io/guides/gs/accessing-facebook/

http://www.technicalkeeda.com/spring/spring-social-facebook-integration-example 相同,但在 gradle 中。

我面临的问题是当我尝试 运行 应用程序时,我看到 url 已成功重定向到“/connect/facebook”,但它没有加载facebookConnect.html 相反它抛出错误 如下图:

白标错误页面

此应用程序没有针对 /error 的显式映射,因此您将其视为备用。

3 月 10 日星期二 19:24:41 IST 2015

出现意外错误(类型=方法不允许,状态=405)。 不支持请求方法'GET'

我也尝试过使用网站中给出的相同代码,并在其中使用了我的 facebook appId 和 appSecret,这是我通过在 facebook 应用程序中提供随机主机名生成的,但我仍然遇到同样的错误。

我还尝试将我创建的随机主机名添加到 windows 中的 /etc/hosts 文件。

谁能帮我解决为什么我看不到必须由 ConnectController 自动呈现的 .html 页面?

我终于得到了答案。 我们需要在 application.properties 文件中添加其他参数,即

"spring.social.auto_connection_views=真

连同 id 和 secret。

spring.social.facebook.appId=

spring.social.facebook.appSecret=

这个 属性 教程中没有提到。终于成功了。 :) “

有完全相同的问题。 application.yml(或 .parameter 等价物)中的 spring.social.auto-connection-views: true 确实解决了它,但随后使用了默认的 facebookConnect.htmlfacebookConnected.html

我通过删除上述应用程序参数并简单地将 Thymeleaf 诱人引擎添加到 pom.xml:

来解决它
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

然后您可以使用位于 src/main/resources/templates/connect/

facebookConnect.htmlfacebookConnected.html

希望对您有所帮助。