我想使用spring social来开发一个Twitter应用程序,它将更新状态并上传照片.我无法理解如何使用Spring社交进行Oauth身份验证.我看到的所有示例都是关于硬编码即使只是针对该特定的user.I不想硬编码除app键以外的任何东西.
请有人解释我如何使用spring社交来做Twitter Oauth.我浏览了spring框架的官方文档,但在看到其他示例时却感到困惑.
谢谢
twitter spring twitter-oauth spring-social spring-social-twitter
这与在Heroku上运行Craig Walls Spring社交展示有关.此应用程序使用内存数据库中的H2在本地运行良好.但是,当我部署到Heroku时,数据库不再有效.是否还需要在Heroku服务器上配置其他内容才能运行内存数据库?
请允许有人分享Spring Social Facebook登录工作示例的链接,除了由Spring Social人员自己提供的git hub上的示例应用程序.特别是如果没有使用数据库的任何示例代码那么这将是非常棒的.
使用 Hibernate 和 Spring Social,
我正在尝试通过电子邮件地址查询数据库。当我执行此查询时:
公共帐户 findAccountByUsername(String 用户名) {
Run Code Online (Sandbox Code Playgroud)Session session = sessionFactory.getCurrentSession(); String selectQuery = "FROM Account as account WHERE account.username = "+username; Query query = session.createQuery(selectQuery); @SuppressWarnings("unchecked") List<Account> results = query.list(); if (!results.iterator().hasNext()) return null; return results.iterator().next(); }
我得到这个异常
2013-01-22 14:37:13,090 [DEBUG] [HibernateTransactionManager,doBegin(),569] - 将 Hibernate 事务公开为 JDBC 事务 [com.mchange.v2.c3p0.impl.NewProxyConnection@3b249bb2] 2013-01-22 14 :37:13,352 [DEBUG] [QueryTranslatorImpl,parse(),272] - parse() - HQL:来自masterPackage.model.orm.Account作为帐户,其中account.username = myEmail@gmail.com 2013-01-22 14: 37:13,383 [DEBUG] [AbstractPlatformTransactionManager,processRollback(),843] - 启动事务回滚 2013-01-22 14:37:13,384 [DEBUG] [HibernateTransactionManager,doRollback(),672] - 回滚会话上的 Hibernate 事务 [org …
我目前有一个使用Spring MVC和Spring Social建立的网站,因此用户可以使用Facebook和Twitter登录.
现在我想授权我的Android客户端使用Facebook(或Twitter)凭据访问我的第三方网站.如上所述,这应该是可能的.但他并没有继续说出如何.任何人都可以让我在路上吗?请给我一些如何做到这一点的基本概述.我真的被困在这里......
我正在开发一个本机移动应用程序(用于 ios)和一个可以使用 Facebook 身份验证进行注册的 Web 应用程序。
我想知道进行身份验证的适当解决方案是什么?
如果我想在两个应用程序中共享身份验证功能,我应该使用 spring social 还是 javascript?
服务器从移动应用程序接收一次性授权代码.我需要将其转换为spring-social访问令牌并刷新令牌并将其保存在服务器数据库中以供以后使用.
我目前的代码:
String oneTimeAuthorizationCode= "xxx"; // provided by mobile client
ConnectionData cd = new ConnectionData("google", null, null, null, null, oneTimeAuthorizationCode, null, null, null);
GoogleConnectionFactory googleConnectionFactory = (GoogleConnectionFactory) connectionFactoryLocator.getConnectionFactory("google");
Connection<Google> connection = googleConnectionFactory.createConnection(cd);
// get the google API and work with it
Google google = (Google) connection.getApi();
Run Code Online (Sandbox Code Playgroud)
oneTimeAuthorizationCode是错误的,因为ConnectionData期望访问令牌而不是一次授权代码.任何想法如何让spring-social-google交换访问令牌的一次性代码并刷新令牌?
是否可以将 Spring Social 与简单的 OpenID 提供商(如 Wordpress、Livejournal 或 Steam)一起使用?似乎 Spring Social 只能实现 OAuth2。
我已经使用 Spring boot 一段时间了,在我看到的每个示例中,数据源总是在 application.properties 中配置,有点像这样:
# DataSource configuration
spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://localhost:5432/abcdef
spring.datasource.username=******
spring.datasource.password=******
Run Code Online (Sandbox Code Playgroud)
但是,最近我一直在尝试集成 Spring Social,我看到的示例在 java 中的配置文件中配置它,如下所示:
@Bean
public DataSource dataSource() {
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName(env.getProperty("db.driver"));
dataSource.setUrl(env.getProperty("db.url"));
dataSource.setUsername(env.getProperty("db.username"));
dataSource.setPassword(env.getProperty("db.password"));
return dataSource;
}
Run Code Online (Sandbox Code Playgroud)
这允许数据源对象稍后被注入或自动连接到社交配置中,例如这里看到的。
我的问题是,我是否需要像这样配置一个数据源 bean 以便以后能够注入数据源,还是 Spring-boot 会为我处理?
我正在尝试使用 Facebook Account-Kit 服务验证 Android/iOS 客户端电话号码或电子邮件地址。我不确定如何使用基于 Spring Boot 的后端服务器验证授权码或访问令牌并返回我自己的访问令牌。
在此之间,我已经彻底了解了这个博客https://www.baeldung.com/spring-security-5-oauth2-login,但它基于会话。我不清楚如何将其更改为无状态(例如 /oauth/token)。
任何人都可以让我知道如何解决这个问题吗?
参考:[ https://developers.facebook.com/docs/accountkit/graphapi][1]
这是我的代码:
@Configuration
@EnableOAuth2Client
public class SocialConfig extends WebSecurityConfigurerAdapter {
@Autowired
OAuth2ClientContext oauth2ClientContext;
private String[] PUBLIC_URL = { "/*", "/api/v1/account/validate", "login/accountkit", "/api/v1/account" };
@Override
protected void configure(HttpSecurity http) throws Exception {
// super.configure(http);
http.authorizeRequests()
.antMatchers(PUBLIC_URL).permitAll()
.anyRequest().authenticated()
.and().csrf()
.disable()
.addFilterBefore(ssoFilter(), BasicAuthenticationFilter.class);
}
private Filter ssoFilter() {
OAuth2ClientAuthenticationProcessingFilter filter = new OAuth2ClientAuthenticationProcessingFilter(
"/login/accountkit");
OAuth2ProtectedResourceDetails accountkit = accountKit();
OAuth2RestTemplate template = new OAuth2RestTemplate(accountkit, oauth2ClientContext);
filter.setRestTemplate(template);
UserInfoTokenServices userInfo = …
Run Code Online (Sandbox Code Playgroud) android spring-security spring-social spring-boot spring-security-oauth2
spring-social ×10
spring ×9
java ×5
spring-boot ×3
android ×2
spring-mvc ×2
google-login ×1
h2 ×1
heroku ×1
hibernate ×1
hql ×1
javascript ×1
spring-data ×1
twitter ×1