小编Ait*_*tch的帖子

nio上下文中的请求 - 响应同步/匹配

我有一个服务器客户端应用程序(Java EE和Android),通过websockets进行通信.通信工作以及协议本身用于以json方式发送对象,这些对象将被正确包装,序列化,发送,反序列化,解包和重建.两个应用程序都使用另一个库项目,包含所有可能的请求和响应类.

现在我的问题: 图书馆还应实施非阻塞通信策略,但透明的请求 - 响应实现.可能我不是第一个遇到这个问题的人,所以我认为那里可能有一些不错的实现:).

我想要的是:

// server should sleep 5000ms and then return 3*3
Future<Integer> f1 = server.put(
  new SleepAndReturnSquareRequest(5000, 3),
  new FutureCallback<Integer>{
    public void onSuccess(Integer square) {
      runOnUiThread(new Runnable{
        // Android Toast show square
      });
    }

    // impl onFailure
  }
);

Future<Date> f2 = server.put(
  new TimeRequest(),
  new FutureCallback<Date>{
    public void onSuccess(Date date) {
      // called before other onSuccess
    }

    // impl onFailure
  }
);

// e.g. when the activity in android changes I'll cancel all futures. …
Run Code Online (Sandbox Code Playgroud)

java communication grizzly guava netty

8
推荐指数
1
解决办法
731
查看次数

git`inco --squash`不会添加"Merge"标头来提交

我想知道所有工具如何知道哪些分支/提交被合并,直到我在提交中找到"合并"标头.

我的问题是:为什么a git merge --squash不添加那个标题,同时git merge呢?

换句话说:为什么我看到的合并边缘与合并时git merge同时有没有边git merge --squash

谢谢.

一些修改的信息:

使用"merge-header"我的意思是git log合并后的第二行:

commit 7777777
Merge: 0123456 9876543
Author: Some Body <...>
Date:   Fri ....
Run Code Online (Sandbox Code Playgroud)

...而git merge --squash不会产生线,我的假设是,git的GUI工具读取头能够得出"合并边"看到下面的图片.

我的问题再次相同,见上文.

git merge

8
推荐指数
1
解决办法
1626
查看次数

多个收件人的端到端加密

WhatsApp宣布支持正常对话和群聊的端到端加密.

假设没有共享私钥并且它是真正的端到端,那么当我向一个有10个朋友的组发送10MB视频时,我必须加密10x并将其发送10x?否则它对我来说不是端到端,因为服务器必须无法转发它.

那是对的吗?谢谢

encryption

4
推荐指数
1
解决办法
681
查看次数

OAuth2 - 刷新令牌不必要的复杂性

我不清楚,如果端点是RFC6749中多次描述的相同(授权)服务器,为什么oauth2中存在刷新/访问令牌概念.

资源所有者在不共享凭据的情况下授权任何第三方组件的第一个授权步骤是oauth2 基本思想.使用授权令牌生成访问和刷新令牌只是另一级别的授权间接imho,但没有增加安全性.

由于授权服务器是相同的,因此访问令牌与授权令牌和刷新令牌一样敏感,因此我称之为不必要的复杂性.

对我来说唯一有意义的解释是,如果有人窃取了访问令牌,则客户端可以请求新的访问令牌.但有人怎么加钢呢?如果它是中间的人,那么当客户请求新的时,他也有刷新令牌.

我的问题是:为什么授权服务器不仅仅返回一个可以被客户端和资源所有者撤销的访问令牌?刷新/访问令牌策略有什么好处?

谢谢你的解释.

security oauth oauth-2.0

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

标签 统计

communication ×1

encryption ×1

git ×1

grizzly ×1

guava ×1

java ×1

merge ×1

netty ×1

oauth ×1

oauth-2.0 ×1

security ×1