The Map Local Tool enables you to use the content of local files as a response to your requests, which are matched with your rules. Map Local Tool could significantly boost your speed development and provide the capability to rapidly test on several edge-cased without explicitly updating the data in your server.
It’s also the must-have tool for QAs or Developers if you would like to test the app’s behavior with various responses.
If you would like to map an Entire Local Directory, let check out the Map Local (Directory) page.
There are plenty of scenarios in your debugging time when you would try various type of response to test the layout or content from your devices, apps:
Quick Trying new params in responses.
Test the app’s behaviors with different parameters in the responses.
Test the UI layout with unusual content.
Quicklyreproduce the bug with specific params in responses.
Mock Fake API with a local File: It's useful for developers would try out the testing APIs which are not in production.
Map from an HTTP Message => Able to change the HTTP Status Code, Headers, and Body Content
Map from a Local File => Only change the Body and keep the Headers from the Response
Automatically generate a Local File from a Response from a Selected Request.
Directly Edit the content from the app
Auto validate the HTTP Message format
From Proxyman 2.27.0+, Map Local can work with GraphQL Request by a specific QueryName. Please check out the following GraphQL Document.
If the URL of incoming requests are matching with the pre-defined matching Rule, and the Local file is valid => The body response of those matching requests is automatically replaced with the content of the local file.
If the requests are not matching any rules, the entire Response’s content remains from the server.
You can simply define the rule by a combination of Wildcards and Include subdirectories options.
Top-Down Matching: Incoming requests will be evaluated by Top-Down priority. The Rule on the top of the list is the first rule to evaluate.
Asterisk ( * ): Matches any character zero or more times. For example, “api.proxyman.io/v1/*” matches anything beginning with “api.proxyman.io/v1/”, such as “api.proxyman.io/v1/login”, “api.proxyman.io/v1/data” and “api.proxyman.io/v1/”, …
Question mark ( ? ): Matches a single character once. For example, “api.proxyman.io/v?/login” matches api.proxyman.io/v1/login and api.proxyman.io/v2/login
Include subdirectories: All subdirectories will automatically match. It’s super convenient if you want to match all paths from the domain. For example: “api.proxyman.io” with ON in “Include subdirectories” matches all URLs, which have “api.proxyman.io” as a domain, such as “api.proxyman.io”, “api.proxyman.io/v1/data”, “api.proxyman.io/login”, “api.proxyman.io/user?name=nghia”, ….
HTTP / HTTPS include: By default, “api.proxyman.io” matches all requests, which have a scheme that is HTTP or HTTPS. Otherwise, “http://api.proxyman.io” matches only HTTP, and “https://api.proxyman.io” matches only HTTPS.
Map Local Tools also offer various ways to quickly manipulate the Rule List and support hotkeys as well.
⌘ + ⌥ + L : Quick open Map Local window.
⌘ + N : New entry
⌘ + E : Edit entry
⌘ + D : Duplicate entry
⌘ + ⌫ : Delete entry
Support Multiple-selection entry
Quick the Local File in Finder or your favorite Editor.
All changes are immediately applied and you don’t need to save.
For matched response, the “Content-Type” will automatically replace the type of local file. Ex: application/json, image/png, image/jpg, …. So the app will handle the response appropriately.
The eaiest way to create a Map Local Rule with current Response Body is:
Right Click on the Flow -> Tools -> Map Local
Proxyman will create a rule with current Response Body (The file is stored in your Desktop folder)
From now, we can directly change the Response body and it affect on the next URL.
Map Local Tools Tutorial: https://proxyman.io/blog/2019/08/map-local-feature.html