小编Pio*_*ski的帖子

Facebook omniauth回调和#_

我使用Rails 3.1,Devise和Omniauth.

问题是,当facebook回调到我的应用时,网址结束#_.然后,在回调操作中,我重定向到某个东西 - 例如/after_signin 重定向导致/after_signin#_.

知道如何从URL中删除此锚点吗?

编辑:我在回调函数中放入什么并不重要.即使是简单的重定向:

class Users::OmniauthCallbacksController < ApplicationController
  def facebook
    redirect_to "/after_callback"
  end
end
Run Code Online (Sandbox Code Playgroud)

它会导致去 /after_callback#_

即使在正常的控制器中,如果你去了/#_并且你有一些重定向,它将被重定向到指定的路径并#_在末尾添加.

EDIT2:我刚刚发现保留锚点是浏览器错误.所以它必须在前端处理.

facebook ruby-on-rails devise omniauth

7
推荐指数
1
解决办法
2868
查看次数

验证Jpa实体:在服务中或由生命周期监听器

问题在于将Jpa实体的业务验证逻辑放在哪里(或换句话说:您更喜欢哪里).

两个想法是:

  1. 在EntityListener中,保存或更新之前将验证实体
  2. 在提供对jpa持久方法的访问的服务中.

两者都有利弊.当使用方法2时,测试更容易,因为您可能只是模拟jpa提供程序并测试验证逻辑.另一方面,使用#NotNull等验证,验证将在同一时刻进行.

我很想知道如何解决项目中的验证问题,哪种方式更好.

谢谢.

java architecture validation design-patterns jpa

6
推荐指数
1
解决办法
1397
查看次数