Proxyman је нативни прокси клијент за macOS и iOS, намењен за пресретање, преглед и модификацију HTTP/HTTPS саобраћаја приликом развоја апликација. Према званичног сајта Proxyman (2025), алат се користи у преко 10 000 компанија и подржава све савремене верзије iOS и macOS. Прокси клијент нуди бесплатну основну верзију и разликује се од Charles Proxy модернијим интерфејсом, подршком JavaScript скрипти за модификацију података у лету и уграђеном компатибилношћу са iOS симулатором.
Главно
Proxyman је HTTP/HTTPS прокси клијент створен специјално за Apple екосистем. За разлику од вишеплатформних решења, Proxyman користи нативне macOS оквире (Swift, AppKit), што осигурава високу перформансу и бешавну интеграцију са системским механизмима проксирања. Алат подржава macOS 11+ и iOS 14+.
Proxyman се позиционира као савремена алтернатива Charles Proxy-у за програмере под Apple екосистемом. Главне предности: бесплатна верзија са пуном основном функционалношћу, нативни интерфејс који одговара дизајн систему macOS, аутоматско подешавање за iOS симулатор без додатних радњи. Proxyman се активно развија од 2018. године и има отворен систем повратне информације са заједницом програмера.
Proxyman ради на macOS (нативна апликација, није Electron) и пружа помоћну апликацију за iOS. Физичке уређаје (iPhone, iPad) се подешавају путем WiFi Proxy као и Charles. Апликација за iOS (Proxyman iOS companion) омогућава преглед саобраћаја директно на уређају без рачунара — ова функција је јединствена за Proxyman.
Proxyman ради по стандардном MITM принципу: апликација се конфигурише као системски прокси кроз који пролази целокупни HTTP/HTTPS саобраћај. Алат користи нативне механизме macOS Network Extension за пресретање саобраћаја без потребе за ручним подешавањем проксија за iOS симулатор.
На macOS Proxyman користи Apple Network Framework за транспарентно пресретање саобраћаја. Након активације проксија, Proxyman ствара виртуелну мрежну интерфејс кроз коју пролази саобраћај свих апликација. За iOS симулатор, подешавање се одвија аутоматски при покретању — Proxyman путем Xcode-а открива покренуте симулаторе и преусмерава њихов саобраћај без ручног подешавања проксија у поставкама.
За дешифровање HTTPS Proxyman инсталира локални корени цертификат у системски привезак кључева macOS. При првом покретању, програм нуди инсталацију цертификата и поверење њему. Сви цертификати за одређене домене се генеришу у лету и потписују се кореним цертификатом Proxyman. За iOS симулатор, цертификат се инсталира аутоматски при покретању проксија.
// Примјер скрипте Proxyman за модификацију одговора
// Scripting: мењамо статус одговора на 500 за тестирање грешака
function onResponse(request, response) {
if (request.url.includes("/api/users")) {
response.statusCode = 500;
response.body = JSON.stringify({
error: "Internal Server Error",
code: "SERVER_TIMEOUT"
});
}
return response;
}
Proxyman пружа јединствени скуп функција који га издвајају од других прокси алата. Посебан акценат је стављен на скриптну модификацију саобраћаја и нативну перформансу.
Главна карактеристика Proxyman — подршка JavaScript скрипти за модификацију захтева и одговора. Уместо да ручно уређујете сваки захтев кроз Breakpoints (као у Charles-у), програмер може да напише скрипт који ће се аутоматски примењивати на одређене URL. Скрипте имају пун приступ заглављима, телу захтева и одговора, статусном коду и метаподацима. Ово омогућава аутоматизацију рутинских операција: замена ауторизационог токена, измена заглавља, емулација грешака за тестирање.
Proxyman нуди флексибилан систем филтера заснован на правилима. Можете креирати профиле који аутоматски групишу саобраћај по доменима, типовима садржаја или статусним кодовима. На примјер, сви захтеви ка API ваше апликације аутоматски доспевају у посебан групу, а статика (CSS, JS, слике) у другу. Ово је посебно згодно при дебагирању када треба да се усредоточите само на одређеним ендпоинтима.
| Функција | Proxyman | Charles Proxy | Напомена |
|---|---|---|---|
| Scripting | JavaScript | Нема | Аутоматска модификација без Breakpoints |
| iOS Simulator | Аутоматски | Ручно подешавање | Proxyman открива симулатор кроз Xcode |
| Бесплатна верзија | Да | 30 дана trial | Proxyman — без временског ограничења |
| Платформа | macOS, iOS | Windows, macOS, Linux | Charles вишеплатформни, Proxyman — само Apple |
| HAR Export | Да | Да | Оба подржавају стандардни формат |
Proxyman приказује временску линију захтева у стилу временског дијаграма, где је сваки захтев представљен бојом траком са информацијама о трајању, статусу и величини. Линија је интерактивна: можете изабрати опсег времена и видјети само захтеве из тог периода. За сваки захтев је доступна фазна подјела: DNS, Connect, TLS Handshake, Request, Response.
Јединствена могућност Proxyman — посебна апликација за iOS која се може инсталирати на iPhone или iPad. Она омогућава преглед мрежног саобраћаја директно на уређају без повезивања са рачунаром. Саобраћај се приказује у реалном времену са могућношћу филтрирања и претраге. Апликација је посебно корисна при теренском тестирању када нема приступа рачунару.
Proxyman нуди различите начине подешавања за iOS и Android. Захваљујући нативној интеграцији са Xcode-ом, подешавање за iOS симулатор је практично аутоматско. За физичке уређаје и Android потребно је ручно подешавање.
Најједноставнији сценарио: покрените Proxyman, отворите картицу iOS Simulator и кликните Start. Proxyman ће аутоматски открити покренуте симулаторе кроз Xcode и подесити прокси. HTTPS цертификат се такође инсталира аутоматски. Никакве додатне радње нису потребне — саобраћај симулатора се одмах појављује у прозору Proxyman. Ово је значајна предност у одношу на Charles, где подешавање симулатора захтева ручно постављање проксија.
За iPhone или iPad: повежите уређај на исту WiFi мрежу као и рачунар. У поставкама WiFi уређаја наведите HTTP Proxy: IP адресу рачунара и порт 9090 (подразумевани порт Proxyman). Затим отворите Safari и пређите на http://proxy.man/ssl ради инсталације цертификата. На iOS 10.3+ обавезно укључите поверење цертификату у Settings → General → About → Certificate Trust Settings.
Android уређаји се подешавају слично iOS: WiFi Proxy са IP адресом рачунара и портом 9090. За HTTPS је потребна инсталација цертификата путем претраживача на http://proxy.man/ssl. На Android 7+ за debug компилацију апликације биће потребан фајл network_security_config.xml са поверењем корисничким цертификатима. За Android емулатор користите IP адресу хоста (обично 10.0.2.2) уместо IP рачунара.
<!-- network_security_config.xml за Android са Proxyman-ом -->
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<debug-overrides>
<trust-anchors>
<certificates src="user" />
<certificates src="system" />
</trust-anchors>
</debug-overrides>
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
<certificates src="system" />
</trust-anchors>
</base-config>
</network-security-config>
Избор између Proxyman и Charles Proxy зависи од конкретних потреба тима и платформе развоја. Размотримо кључне разлике како бисмо помогли програмеру донесе одлуку на основу информација.
Proxyman је написан у Swift-у са AppKit, што осигурава нативну перформансу macOS и минималну потрошњу меморије. Charles је написан у Java (Eclipse RCP), што омогућава вишеплатформност, али може довести до нешто веће потрошње меморије и ненативног интерфејса на macOS. За програмере Apple екосистема, Proxyman се обично осећа боље одзивнијим.
Charles нуди зрелији и шири скуп алата: Rewrite Rules са визуелним уређивачем, Repeat за понављање захтева, Map Local/Remote, Auto Save сесија. Proxyman одговара савременијим функцијама: Scripting у JavaScript, аутоматско подешавање симулатора, iOS-пратилац за преглед саобраћаја на уређају. Charles има предност у сложеним сценаријима аутоматизације (Rewrite, Repeat), а Proxyman — у брзој и флексибилној модификацији кроз скрипте.
Proxyman нуди бесплатну верзију са основном функционалношћу без временског ограничења. Pro верзија (претплата ~$12/годину или једнократна куповина ~$59) откључава напредне функције: scripting, филтре, извоз. Charles — $50 за лиценцу са 30-дневним trialом. За независне програмере, Proxyman је доступнији; за корпоративна окружења, разлика је незнатна.
Често постављана питања
Proxyman има бесплатну верзију са основном функционалношћу за пресретање HTTP/HTTPS саобраћаја без временског ограничења. Плаћене претплате (Pro и Team) додају scripting, напредне филтре, извоз у HAR и приоритетну подршку. За већину задатака дебагирања довољна је бесплатна верзија.
Proxyman — нативна macOS апликација, али може пресретати саобраћај са Android уређаја путем WiFi Proxy као и Charles. Android уређаји се подешавају као HTTP-прокси са IP адресом рачунара и портом Proxyman. За Android емулатор користи се IP 10.0.2.2. HTTPS цертификат се инсталира одвојено.
Постоје два начина: Local Edit — двоструки клик на захтев, избор картице Response, ручно уређивање, затим дугме Execute за слање измијењеног одговора апликацији. Scripting — писање JavaScript скрипте који аутоматски примењује измене на наведене URL при сваком захтеву.
Да, Proxyman подржава извоз у формате: HAR (HTTP Archive), Proxyman Session (.pxm), Curl Command (за сваки захтев), Plain Text. Извоз је доступан кроз контекстни мени на захтеву или групи захтева. HAR формат је компатибилан са Charles Proxy, Chrome DevTools и онлајн прегледачима.
Proxyman аутоматски открива покренуте iOS симулаторе кроз Xcode и преусмерава њихов саобраћај без ручног подешавања. При покретању проксија, Proxyman примењује системски прокси путем Network Extension на macOS, који се аутоматски примењује на све симулаторе. HTTPS цертификат се такође инсталира аутоматски.
Закључак
Развићемо мобилну апликацију под кључ
IT Sectr креира iOS и Android апликације за стартапе и предузећа од 2017. године. Саветоваћемо вас и предложити најбоље решење.
Прочитајте такође