تنقية البيانات (iOS)
تنقية مكوّنات واجهة المستخدم
Section titled تنقية مكوّنات واجهة المستخدمستظهر طرق العرض المُنقّاة مموّهة في إعادة التشغيل الناتجة. يمكنك إضافة أي مكوّن من مكوّنات واجهة المستخدم وسيتم إزالته تلقائيًا (للحفاظ على الذاكرة) بمجرد أن يخرج من الشاشة.
SwiftUI
Section titled SwiftUIما عليك سوى إضافة المُعدِّل .sensitive() إلى المكوّن المطلوب.
import ORTracker
Text("Very important sensitive text")
.sensitive()
UIKit
Section titled UIKitimport ORTracker
ORTracker.shared.addIgnoredView(view)
React Native
Section titled React Nativeيُصدِّر الـ SDK المكوّن ORSanitizedView الذي يمكنك استخدامه لتغليف مكوّناتك الحساسة من أجل تمويهها.
import OR from '@openreplay/react-native'
// ... your app UI
<OR.ORSanitizedView>
<SensitiveComponent />
</OR.ORSanitizedView>
// ...
تنقية طلبات الشبكة
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)