
Hello, Habr! My name is Nastya, I work in the FunCorp mobile app testing team.
- . , , , . .
, , , , Rewrite Breakpoints.
, Funorp Charles Proxy.
, , .
1: , . , .
2: push-. , . , . : , .
? , . 500, , . API, . , , , .
? , .
FunCorp?
Charles Proxy Funorp -. , . , .
. -, , SSL-, . -, , , , .
1. , ,
, Charles , .
- Charles Proxy.
- SSL- . chls.pro/ssl .
- iOS : General -> About -> Trust Certificates. Android 7.0 network_security_config. .
- Charles:
- c Charles Wi-Fi , Wi-Fi , -: IP- , Charles, Server (Hostname), 8888;
- Charles , Wi-Fi, ;
- Charles , , (), Port Forwarding . Β« < >Β».
- , Charles .
- SSL Proxying Settings .
: Charles, , .

1: Charles. , .

2: , .. (Twitter, Facebook, .), β Charles .
.
Structure view + Focus Mode
Structure view , , . . . Overview , , , Contents , .
Focused Mode. , , Focus.

, Focus, . Other Hosts.

: Charles , , , .
, . . , , . Sequence view.
Sequence view
Sequence , , . , .
. : , , , , ( ), , IP- , , Charles .
/. , SDK .
New Custom Header Column. .
Focused , Structure view.

β Focused . Settings :

, , , , , Focused.

, :
- URL.
- .
- .
- , .
- .
- , .
- ( ).
- ( ) .
:
2. API
, API, . developer mode, API, .
, URL , β https://api-1111.ifunny.mobi, URL API β https://api.ifunny.mobi.
Charles .
Map Remote
Map Remote URL (Map From) (Map To). , ( ).
Map Remote . Map Remote, Tools: Map Remote macOS (ββ₯M). Charles.


: Charles URL . URL Host, Tab. Protocol, Port, Path, Query .
Rewrite
Rewrite β Charles. 30 (Rewrite sets) (Rewrite rules).
Rewrite Tools -> Rewrite ( macOS β ββ₯R). Rewrite set (1), (2). Rewrite sets , . (Location) , . Location (3).

, (4). , .

Rewrite β : (header rules), (URL), (query parameter rules) (body rules).
, , . (Type).
: (Request), (Response) , . -.
Rewrite. Match, , Replace. , β -. Match , . Host Body.
Β« Β» (Replace First), Rewrite . .
API Type: Host. :

Match, Location, , Value .
3.
, , . , , , .
, :
- ;
- : 500, 503;
- : 403, 404;
- ;
- , .
:
- URL, , URL.
- β Rewrite Response Status.
. Replace :

- 403 Block list ( macOS β ββ₯B), Allow list ( macOS β ββ₯W).
Block Lists, Allow Lists
Block List URL, 403 . :

Allow list : URL, . 403 .
4.
, : . , .
, , . ? .
Map Local
Map Local (ββ₯L). , , . , , , / (json, xml .., ). , Map Local.

Rewrite. Type: Body, Match , . Value Replace, .
/ Rewrite .
, - , -. Match , Β«-Β» API , Replace β .
5. .
, WiFi, . , usability , , ?
(β§βT) Charles :

, , Breakpoints (β§βK).
: .
Charles β . Β« CharlesΒ». Rewrite, .
Breakpoints , . β , . β . , . .
Rewrite
? , , . , .
- , , :
- , .
- .
- .
, ID . ID, . ID your_var, your_var -.

- , .
1: , , , , .
2: Β« , Rewrite Β».
, Rewrite , Overview Notes:

Charles Rewrite:

Window -> Error Log . , : , , Rewrite.

, Rewrite . - , , .
Location.
, - .
, -. Charles macOS: , , .
Auto save
Charles β , . , . - , . , .
Tools -> Auto Save (ββ₯A), chls-. , Charles .

Mirror
β Mirror (ββ₯I). , Charles. , . , , Map Local.

. Charles Proxy ( ) , Funorp. - , , , , .
: - .