@@ -427,144 +427,6 @@ class ExtraViewController: UIViewController {
427427 let networkTestingVC = NetworkTestingViewController ( )
428428 navigationController? . pushViewController ( networkTestingVC, animated: true )
429429 }
430-
431- private func performNetworkCaptureTest( ) {
432- guard let url = URL ( string: " https://httpbin.org/post " ) else {
433- print ( " [NetworkCaptureTestClient] Failed to create URL " )
434- return
435- }
436-
437- guard let request = createNetworkTestRequest ( url: url) else {
438- return
439- }
440-
441- logRequestDetails ( request)
442- executeNetworkRequest ( request)
443- }
444-
445- private func createNetworkTestRequest( url: URL ) -> URLRequest ? {
446- let requestData = [
447- " test " : " network_capture " ,
448- " timestamp " : Date ( ) . timeIntervalSince1970,
449- " source " : " iOS-Swift-ExtraViewController " ,
450- " purpose " : " Testing network request/response capture for Session Replay "
451- ] as [ String : Any ]
452-
453- guard let jsonData = try ? JSONSerialization . data ( withJSONObject: requestData, options: [ ] ) else {
454- print ( " [NetworkCaptureTestClient] Failed to serialize JSON data " )
455- return nil
456- }
457-
458- var request = URLRequest ( url: url)
459- request. httpMethod = " POST "
460- request. httpBody = jsonData
461-
462- configureRequestHeaders ( & request, bodySize: jsonData. count)
463- return request
464- }
465-
466- private func configureRequestHeaders( _ request: inout URLRequest , bodySize: Int ) {
467- request. setValue ( " application/json " , forHTTPHeaderField: " Content-Type " )
468- request. setValue ( " \( bodySize) " , forHTTPHeaderField: " Content-Length " )
469- request. setValue ( " application/json, text/plain, */* " , forHTTPHeaderField: " Accept " )
470- request. setValue ( " sentry-ios-test-agent/1.0 " , forHTTPHeaderField: " User-Agent " )
471- request. setValue ( " test-header-value " , forHTTPHeaderField: " X-Custom-Header " )
472- request. setValue ( " network-capture-test- \( UUID ( ) . uuidString) " , forHTTPHeaderField: " X-Request-ID " )
473- }
474-
475- private func logRequestDetails( _ request: URLRequest ) {
476- print ( " [NetworkCaptureTestClient] ========== REQUEST DETAILS ========== " )
477- print ( " [NetworkCaptureTestClient] URL: \( request. url? . absoluteString ?? " unknown " ) " )
478- print ( " [NetworkCaptureTestClient] Method: \( request. httpMethod ?? " GET " ) " )
479- print ( " [NetworkCaptureTestClient] Request Headers: " )
480-
481- if let headers = request. allHTTPHeaderFields {
482- for (key, value) in headers. sorted ( by: { $0. key < $1. key } ) {
483- print ( " [NetworkCaptureTestClient] \( key) : \( value) " )
484- }
485- } else {
486- print ( " [NetworkCaptureTestClient] (no headers) " )
487- }
488-
489- if let bodyData = request. httpBody {
490- print ( " [NetworkCaptureTestClient] Request Body Size: \( bodyData. count) bytes " )
491- if let bodyString = String ( data: bodyData, encoding: . utf8) {
492- print ( " [NetworkCaptureTestClient] Request Body: \( bodyString) " )
493- }
494- }
495-
496- print ( " [NetworkCaptureTestClient] ===================================== " )
497- }
498-
499- private func executeNetworkRequest( _ request: URLRequest ) {
500- let session = URLSession ( configuration: URLSessionConfiguration . default)
501- let dataTask = session. dataTask ( with: request) { [ weak self] data, response, error in
502- self ? . handleNetworkResponse ( data: data, response: response, error: error)
503- }
504-
505- print ( " [NetworkCaptureTestClient] Starting request... " )
506- dataTask. resume ( )
507- }
508-
509- private func handleNetworkResponse( data: Data ? , response: URLResponse ? , error: Error ? ) {
510- print ( " [NetworkCaptureTestClient] ========== RESPONSE DETAILS ========== " )
511-
512- if let error = error {
513- logNetworkError ( error)
514- } else if let httpResponse = response as? HTTPURLResponse {
515- logSuccessfulResponse ( httpResponse, data: data)
516- } else {
517- print ( " [NetworkCaptureTestClient] ⚠️ Unexpected response type: \( type ( of: response) ) " )
518- }
519-
520- print ( " [NetworkCaptureTestClient] ====================================== " )
521- }
522-
523- private func logNetworkError( _ error: Error ) {
524- print ( " [NetworkCaptureTestClient] ❌ Network request failed: \( error) " )
525- print ( " [NetworkCaptureTestClient] Error domain: \( ( error as NSError ) . domain) " )
526- print ( " [NetworkCaptureTestClient] Error code: \( ( error as NSError ) . code) " )
527- }
528-
529- private func logSuccessfulResponse( _ httpResponse: HTTPURLResponse , data: Data ? ) {
530- print ( " [NetworkCaptureTestClient] ✅ Response received " )
531- print ( " [NetworkCaptureTestClient] URL: \( httpResponse. url? . absoluteString ?? " unknown " ) " )
532- print ( " [NetworkCaptureTestClient] Status Code: \( httpResponse. statusCode) " )
533- print ( " [NetworkCaptureTestClient] Status Description: \( HTTPURLResponse . localizedString ( forStatusCode: httpResponse. statusCode) ) " )
534-
535- print ( " [NetworkCaptureTestClient] Response Headers: " )
536- for (key, value) in httpResponse. allHeaderFields. sorted ( by: { String ( describing: $0. key) < String ( describing: $1. key) } ) {
537- print ( " [NetworkCaptureTestClient] \( key) : \( value) " )
538- }
539-
540- if let data = data {
541- logResponseBody ( data)
542- }
543- }
544-
545- private func logResponseBody( _ data: Data ) {
546- print ( " [NetworkCaptureTestClient] Response Body Size: \( data. count) bytes " )
547-
548- if let json = try ? JSONSerialization . jsonObject ( with: data, options: [ ] ) ,
549- let prettyData = try ? JSONSerialization . data ( withJSONObject: json, options: . prettyPrinted) ,
550- let prettyString = String ( data: prettyData, encoding: . utf8) {
551- let preview = String ( prettyString. prefix ( 1_000 ) )
552- print ( " [NetworkCaptureTestClient] Response Body (JSON): " )
553- print ( preview)
554- if prettyString. count > 1_000 {
555- print ( " [NetworkCaptureTestClient] ... (truncated, total: \( prettyString. count) characters) " )
556- }
557- } else if let responseString = String ( data: data, encoding: . utf8) {
558- let preview = String ( responseString. prefix ( 500 ) )
559- print ( " [NetworkCaptureTestClient] Response Body (Raw): " )
560- print ( preview)
561- if responseString. count > 500 {
562- print ( " [NetworkCaptureTestClient] ... (truncated, total: \( responseString. count) characters) " )
563- }
564- } else {
565- print ( " [NetworkCaptureTestClient] Response Body: (binary data, cannot display) " )
566- }
567- }
568430}
569431
570432extension ExtraViewController : ASWebAuthenticationPresentationContextProviding {
0 commit comments