iOS SDK - تنقية البيانات الحساسة
مكوّنات واجهة المستخدم
Section titled مكوّنات واجهة المستخدمسيتم تمويه العروض التي تمت تنقيتها في إعادة التشغيل الناتجة. يمكنك إضافة أي مكوّن لواجهة المستخدم وسيتم إزالته تلقائيًا (للحفاظ على الذاكرة) بمجرد عدم ظهوره على الشاشة.
SwiftUI
Section titled SwiftUIما عليك سوى إضافة المُعدِّل .sensitive() إلى المكوّن المطلوب
import ORTracker
Text("Very important sensitive text")
.sensitive()
UIKit
Section titled UIKitimport ORTracker
ORTracker.shared.addIgnoredView(view)
طلبات الشبكة
Section titled طلبات الشبكةيتم تصدير مفتاحين لاقتطاع بيانات الطلب/الاستجابة تلقائيًا: ignoredKeys للمتن وignoredHeaders للترويسات. ستتم تنقية كل من الطلب والاستجابة، ولكن لن يتأثر المتن إلا إذا كان JSON صالحًا.
ما عليك سوى تعيين قائمة من السلاسل النصية التي ترغب في تنقيتها:
let networkListener = NetworkListener()
networkListener.ignoredHeaders = ["mySecretToken"]
networkListener.ignoredKeys = ["password"]
من الممكن أيضًا تعديل بيانات الاستجابة قبل تمريرها إلى الـ listener:
// ... request
var sanitizedData
if let data = data {
do {
let json = try JSONSerialization.jsonObject(with: data, options: [])
sanitizedData = customSanitizeFunction(data)
print(json)
} catch {
print("Error deserializing JSON: \(error)")
}
}
networkListener.finish(response: response, data: sanitizedData)