小编pze*_*zko的帖子

使document.title无法访问Javascript

是否有可能让document.title(<head><title> .. </title></head>)无法改变Javascript?

我的问题是,在我的项目中,有一些javascripts document.title 每1秒更改一次,我希望标题保持不变.不幸的是,我无法更改或删除这些JS文件.我试过想一下解决方法,类似的东西:

function checkTitle() {
if(document.title != oldTitle)
document.title = oldTitle;
}
setInterval(checkTitle(), 100);
Run Code Online (Sandbox Code Playgroud)

这似乎是一个好主意,但不幸的是,我也有计数器在我的网站上显示计时器.我的整个代码看起来像这样:

var ticks = 0;

function update() {
    if(ticks % 1000 == 0) {
    ...update timer and some other stuff...
    }
    ticks+=100;
    if(document.title != oldTitle)
    document.title = oldTitle;
}
setInterval(update, 100);
Run Code Online (Sandbox Code Playgroud)

+ - 100秒后这样的代码开始减速,我的计时器肯定不会每1秒更新一次.

所以问题是:是否有可能使jtml元素(..)无法更改为javascript,如果没有,是否有任何解决方法我的问题?

提前致谢.

html javascript jquery

18
推荐指数
1
解决办法
817
查看次数

使用Querydsl和Spring Data时的最佳实践

使用Spring Data nad Querydsl,我们可以声明存储库接口并跳过实现类.一些具有特定名称或使用@Query注释的方法,这就是全部.

但是有时候我想使用JPAQuery并自己定义方法的主体,比方说

@Repository
public class MyRepositoryImpl implements MyRepository {

    @PersistenceContext
    private EntityManager em;

    @Override
    public List<Tuple> someMethod(String arg) {
        JPAQuery query = new JPAQuery(em);
        ...
    }
Run Code Online (Sandbox Code Playgroud)

但这样我就必须实现其他MyRepository接口方法,这会破坏Spring Data的所有优点!

我可以看到两个选项:

  • 为每个存储库声明另一个接口,然后通常实现它(接口数量增加一倍)
  • 将EntityManager注入@Service类并在那里实现我的自定义方法

我更喜欢选项#2,但据我所知,在@Service类中我们应该只调用存储库方法,所以它也不是一个完美的解决方案.

那么程序员如何处理呢?

spring querydsl spring-data spring-data-jpa

10
推荐指数
2
解决办法
4766
查看次数

Spring Cloud - 如何仅允许访问特定微服务的端点?

我有简单的微服务架构:

  • 边缘服务
  • 服务注册
  • 身份验证服务(我正在使用 JWT 和 OAuth2)
  • 用户服务
  • 前端和一些核心服务

当用户尝试登录时,凭据正在从边缘服务传递到身份验证服务。身份验证服务从用户服务(使用@FeignClient)获取用户数据,如果用户名/密码匹配,则生成令牌。没什么好看的。

这种方法有一个“小”问题:/api/user/{username}用户服务中的端点,由身份验证服务用来获取用户的数据,可能被任何用户用来获取任何其他用户的数据(密码、角色等)。一种解决方案是以某种方式为具有角色的身份验证服务创建 JWT 令牌,AUTH_SERVICE并在用户服务端检查 JWT,如果角色与AUTH_SERVICE拒绝请求不同。

还有其他解决方案吗?

编辑

我认为我的设计很常见,但显然我应该首先更具体:

  • Auth-servie 是我的授权服务器,其他服务是资源服务器
  • 我使用 API 网关模式,我的身份验证服务也在代理
  • 客户端应用程序获取 JWT 后,将其添加到每个请求中,并在此基础上进行身份验证和授权;每个资源服务器都有一个用于验证签名的公钥;如果有效,则服务知道 JWT 已由受信任的 auth-service 生成,并且基于 JWT 的服务创建包含所有用户信息的 OAuth2Authenication 对象

编辑2:

我最终将 auth-service 合并到了 user-service,这是几个 SO 用户的建议。在考虑之后,似乎没有必要为 JWT 生成单独的身份验证服务。我已经接受了@Abhijit Sarkar 的回答,因为它有一些有效的观点,尽管他对额外调用 auth-service 以验证令牌的有效性并不正确。

spring oauth-2.0 microservices spring-cloud

5
推荐指数
1
解决办法
1282
查看次数

Hibernate和no-arg构造函数

正如我们在这里可以看到的, Hibenate对所有@Entity类都需要no-arg构造函数.但是,即使我们没有明确声明一个,java类总是隐式默认的构造函数不是真的吗?

在我的项目中,我没有在我的@Entity类中声明一个无参数构造函数,并且eveything正常工作.但另一方面,我猜Hibernate规范已经仔细编写,所以实际上可能实际上声明默认构造函数可能有一些好处吗?

java hibernate

2
推荐指数
1
解决办法
2225
查看次数