标签: backbase

在多个角度5应用程序之间共享单个服务

我正在我的backbase应用程序中运行多个小角度5应用程序作为小部件.现在我正在尝试编写一个窗口级别的全局服务,并在所有应用程序中共享.

目前,我正在使服务静态并在每个小部件中使用并使用webpack创建特定于小部件的包.在这里,我能够使用rxjs运算符实现http缓存.

但我觉得这可能不是实施它的正确方法.有没有更好的方法在单个项目中跨多个角度5应用程序共享单件服务.

backbase angular angular5

17
推荐指数
2
解决办法
1020
查看次数

修改了URLSession.shared以实现证书固定,他们是如何做到的?

在我的项目中,我们使用的是一个封闭的源代码框架(Backbase,如果你想知道的话).这是一个混合应用程序框架,提供了许多"开箱即用"的安全选项.其中一个是证书固定,我对其实现非常感兴趣.

我们只需要在配置文件中设置一个属性即可.URLSession.shared通过框架处理完成的每个请求,并且钉扎是有效的.但是,如果我实例化我自己的URLSession,那么钉扎效果不佳.但是我也可以URLSession通过用框架实例化它来使pinning对新的有效NSURLSessionConfiguration.

对于那些只阅读代码的人:

// Pinning effective
URLSession.shared.dataTask(with: request, completionHandler: completion)

// Pinning not effective
URLSession(configuration: .default).dataTask(with: request, completionHandler: completion)

// Pinning effective
URLSession(configuration: ShinnyFramework.getConfiguration()).dataTask(with: request, completionHandler: completion)
Run Code Online (Sandbox Code Playgroud)

对我来说,URLSession.shared是不可改变的,所以不可能改变它的工作.要实现固定,唯一的方法是URLSession使用自定义创建新的URLSessionDelegate.

我的问题是:他们做了什么才能得到这种行为?方法调整,Isa调酒,还有其他什么?

编辑:我不是在寻找有关如何实现证书锁定的详细说明.我更感兴趣的是如何编辑所谓的不可变静态属性以及如何在URLSession不使用委托的情况下配置对象的行为.

ios swift backbase urlsession

6
推荐指数
0
解决办法
287
查看次数

标签 统计

backbase ×2

angular ×1

angular5 ×1

ios ×1

swift ×1

urlsession ×1