小编Far*_*way的帖子

在C++ 11的unordered_map中,如何更新特定键的值?

在Java的hashmap中:

map.put(key, new_value) 
Run Code Online (Sandbox Code Playgroud)

将使用new_value更新key = key的条目(如果它存在于hashmap中).

在C++ 11的unordered_map中执行类似操作的正确方法是什么?

我没有找到类似updateXXX的API,文档说unordered_map :: insert函数只有在没有任何这样的密钥对时才会成功.

unordered-map c++11

22
推荐指数
1
解决办法
3万
查看次数

命名kafka主题的最佳实践是什么?

我们是kafka的新手,我们有几个团队正在开发一些应用程序,这些应用程序可以相互发布/订阅事件.由于kafka主题名称将在各个团队之间共享,是否有任何最佳命名方法?

基本上我们不希望看到团队A命名主题,companyname-appname-events而团队B则以productname_functionB完全不同的样式命名另一个主题.

任何建议表示赞赏!

请注意,这可能听起来更像是下面的问题: 什么应该是Kafka的主题和分区的命名约定? 然而,作者在那里问了一些更具体的问题.

naming-conventions apache-kafka

12
推荐指数
2
解决办法
9797
查看次数

单页应用程序 (SPA) 的单点登录 (SSO) 解决方案/架构

我研究 SPA 的 SSO 解决方案已经有一段时间了。有很多解决方案存在细微的差别,同时我还发现并不是每个人对 SSO 都有相同的理解,并且没有多少针对 SPA 的 SSO 既定模式。因此,我并不要求详细的设计/架构,只是尝试看看这个主题是否有任何常见的做法。

SSO 意味着什么?

  1. 我们正在开发一些新的 SPA(也可能是移动和平板电脑应用程序),它们将部署在不同的服务器中并具有不同的域。
  2. 我们还有一个中央 IdP(authServer),其中将存储所有用户身份。
  3. 一旦我登录到SPA1并单击一个按钮,将我带到SPA2(或可能是 SPA3SPA4),我不必输入用户凭据,并且将自动登录。

SPA有什么区别?(与常规网络应用程序相反)

我研究了一些解决方案,甚至是像 SAML 这样的旧解决方案(只是想了解一下 SSO..)。我当前的候选者是OpenId Connect,但后来我意识到 SPA 的差异,如果我的理解是正确的话:与常规 Web 应用程序不同,SPA 通常没有(或者我们尝试没有)后端服务器。SPA 所拥有的只是一个提供静态页面以及脚本、样式表和图像的服务器。

现在问题来了:

OpenId Connect基于OAuth2 授权代码授予类型,这意味着:

  1. 如果我想让每个 SPA 正常工作,我需要一个类似后端代理的模块。
  2. 我使用另一种解决方案来执行客户端 SSO,例如auth0 提供的解决方案
  3. 我还没有找到任何其他解决方案/示例

我的问题:

对于上述第1点,我的理解正确吗?是不是不要让 SPA 像常规 Web 应用程序那样拥有后端代码?

对于上面的第 2 点,这听起来像是一个解决方案,但这与OAuth2 隐式授权类型有什么本质上的不同?

并且,还有其他我应该知道但尚未探索的解决方案(框架、协议等)吗?

single-sign-on oauth-2.0 single-page-application openid-connect auth0

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