Proxyman, uygulama geliştirme sırasında HTTP/HTTPS trafiğini yakalamak, görüntülemek ve değiştirmek için tasarlanmış, macOS ve iOS için yerel bir proxy istemcisidir. Proxyman resmi web sitesine (2025) göre, araç 10.000'den fazla şirket tarafından kullanılmakta ve iOS ile macOS'un tüm modern sürümlerini desteklemektedir. Bu proxy istemcisi ücretsiz bir temel sürüm sunar ve Charles Proxy'den daha modern bir arayüz, gerçek zamanlı veri değişikliği için JavaScript betikleri desteği ve iOS simülatörüyle yerleşik uyumluluk açısından ayrılır.
Önemli Noktalar
Proxyman, özellikle Apple ekosistemi için oluşturulmuş bir HTTP/HTTPS proxy istemcisidir. Platformlar arası çözümlerin aksine Proxyman, yerel macOS çerçevelerini (Swift, AppKit) kullanarak yüksek performans ve sistem proxy mekanizmalarıyla sorunsuz entegrasyon sağlar. Araç, macOS 11+ ve iOS 14+'ı destekler.
Proxyman, Apple ekosistemi geliştiricileri için Charles Proxy'nin modern bir alternatifi olarak konumlanmaktadır. Başlıca avantajlar: tam temel işlevselliğe sahip ücretsiz sürüm, macOS tasarım sistemiyle uyumlu yerel arayüz ve ek adımlar olmadan iOS simülatörü için otomatik yapılandırma. Proxyman 2018'den beri aktif olarak geliştirilmektedir ve geliştirici topluluğuyla açık bir geri bildirim sistemine sahiptir.
Proxyman macOS üzerinde çalışır (yerel uygulama, Electron değil) ve iOS için bir yardımcı uygulama sağlar. Fiziksel cihazlar (iPhone, iPad), Charles'a benzer şekilde WiFi Proxy aracılığıyla yapılandırılır. iOS yardımcı uygulaması (Proxyman iOS companion), bilgisayar olmadan doğrudan cihazda trafiği görüntülemeye olanak tanır — bu özellik Proxyman'a özgüdür.
Proxyman, standart MITM prensibi ile çalışır: uygulama, tüm HTTP/HTTPS trafiğinin geçtiği bir sistem proxy'si olarak yapılandırılır. Araç, iOS simülatörü için manuel proxy yapılandırması gerektirmeden trafiği yakalamak için yerel macOS Network Extension mekanizmalarını kullanır.
macOS'ta Proxyman, şeffaf trafik yakalama için Apple Network Framework'ü kullanır. Proxy etkinleştirildiğinde, Proxyman tüm uygulamaların trafiğinin geçtiği sanal bir ağ arayüzü oluşturur. iOS simülatörü için yapılandırma başlangıçta otomatik olarak gerçekleşir — Proxyman, Xcode aracılığıyla çalışan simülatörleri algılar ve ayarlarda manuel proxy kurulumu olmadan trafiklerini yönlendirir.
HTTPS şifre çözme için Proxyman, macOS sistem anahtarlığına yerel bir kök sertifika yükler. İlk başlatmada, program sertifikayı yüklemeyi ve güvenmeyi ister. Belirli alan adları için tüm sertifikalar anında oluşturulur ve Proxyman kök sertifikasıyla imzalanır. iOS simülatörü için sertifika, proxy başladığında otomatik olarak yüklenir.
// Yanıt değişikliği için Proxyman betik örneği
// Scripting: hata testi için yanıt durumunu 500 olarak değiştir
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, onu diğer proxy araçlarından ayıran benzersiz bir özellik seti sunar. Betik tabanlı trafik değişikliği ve yerel performansa özel vurgu yapılır.
Proxyman'ın ana özelliği, istekleri ve yanıtları değiştirmek için JavaScript betikleri desteğidir. Her isteği Breakpoints aracılığıyla manuel olarak düzenlemek (Charles'taki gibi) yerine, geliştirici belirli URL'lere otomatik olarak uygulanacak bir betik yazabilir. Betikler, başlıklara, istek ve yanıt gövdesine, durum kodlarına ve meta verilere tam erişime sahiptir. Bu, rutin işlemleri otomatikleştirmeye olanak tanır: token değiştirme, başlık değişikliği, test için hata simülasyonu.
Proxyman esnek bir kural tabanlı filtre sistemi sunar. Trafiği alan adlarına, içerik türlerine veya durum kodlarına göre otomatik olarak gruplayan profiller oluşturabilirsiniz. Örneğin, uygulamanızın API'sine yapılan tüm istekler otomatik olarak bir gruba girerken, statik varlıklar (CSS, JS, resimler) başka bir gruba girer. Bu, yalnızca belirli uç noktalara odaklanmanız gerektiğinde hata ayıklama sırasında özellikle kullanışlıdır.
| Özellik | Proxyman | Charles Proxy | Not |
|---|---|---|---|
| Scripting | JavaScript | Hayır | Breakpoints olmadan otomatik değişiklik |
| iOS Simülatörü | Otomatik | Manuel kurulum | Proxyman, Xcode ile simülatörü algılar |
| Ücretsiz sürüm | Evet | 30 günlük deneme | Proxyman — zaman sınırı yok |
| Platform | macOS, iOS | Windows, macOS, Linux | Charles platformlar arası, Proxyman — yalnızca Apple |
| HAR Dışa Aktarma | Evet | Evet | Her ikisi de standart formatı destekler |
Proxyman, her isteğin süre, durum ve boyutu gösteren renkli bir çubukla temsil edildiği bir istek zaman çizelgesini Gantt şeması stilinde görüntüler. Zaman çizelgesi etkileşimlidir: bir zaman aralığı seçebilir ve yalnızca o dönemdeki istekleri görebilirsiniz. Her istek için aşama dökümü mevcuttur: DNS, Connect, TLS Handshake, Request, Response.
Proxyman'ın benzersiz bir yeteneği, bir iPhone veya iPad'e kurulabilen ayrı bir iOS uygulamasıdır. Bilgisayara bağlanmadan doğrudan cihazda ağ trafiğini görüntülemeye olanak tanır. Trafik, filtreleme ve arama özellikleriyle gerçek zamanlı olarak görüntülenir. Uygulama, bilgisayarın bulunmadığı saha testleri için özellikle kullanışlıdır.
Proxyman, iOS ve Android için farklı kurulum yöntemleri sunar. Yerel Xcode entegrasyonu sayesinde iOS simülatörü için yapılandırma neredeyse otomatiktir. Fiziksel cihazlar ve Android için manuel yapılandırma gerekir.
En basit senaryo: Proxyman'ı başlatın, iOS Simulator sekmesini açın ve Start'a tıklayın. Proxyman, Xcode aracılığıyla çalışan simülatörleri otomatik olarak algılar ve proxy'yi yapılandırır. HTTPS sertifikası da otomatik olarak yüklenir. Ek bir işlem gerekmez — simülatör trafiği hemen Proxyman penceresinde görünür. Bu, simülatör kurulumunun manuel proxy yapılandırması gerektirdiği Charles'a göre önemli bir avantajdır.
iPhone veya iPad için: cihazı bilgisayarla aynı WiFi ağına bağlayın. Cihazın WiFi ayarlarında HTTP Proxy'yi belirtin: bilgisayarın IP adresi ve bağlantı noktası 9090 (Proxyman'ın varsayılan bağlantı noktası). Ardından Safari'yi açın ve sertifikayı yüklemek için http://proxy.man/ssl adresine gidin. iOS 10.3+'te, Settings → General → About → Certificate Trust Settings altında sertifika güvenini etkinleştirdiğinizden emin olun.
Android cihazlar iOS'a benzer şekilde yapılandırılır: bilgisayarın IP adresi ve 9090 bağlantı noktasıyla WiFi Proxy. HTTPS için, http://proxy.man/ssl adresinde tarayıcı aracılığıyla sertifikayı yüklemeniz gerekir. Android 7+'da hata ayıklama yapıları için, kullanıcı sertifikalarına güvenen bir network_security_config.xml dosyasına ihtiyacınız olacaktır. Android öykünücüsü için, bilgisayarın IP'si yerine ana bilgisayar IP adresini (genellikle 10.0.2.2) kullanın.
<!-- Proxyman ile Android için network_security_config.xml -->
<?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 ve Charles Proxy arasındaki seçim, ekibinizin özel ihtiyaçlarına ve geliştirme platformuna bağlıdır. Geliştiricilerin bilinçli bir karar vermesine yardımcı olmak için temel farklılıkları inceleyelim.
Proxyman Swift ve AppKit ile yazılmıştır ve yerel macOS performansı ve minimum bellek tüketimi sağlar. Charles, Java (Eclipse RCP) ile yazılmıştır ve platformlar arası uyumluluk sağlar ancak macOS'ta biraz daha yüksek bellek kullanımına ve yerel olmayan bir arayüze neden olabilir. Apple ekosistemi geliştiricileri için Proxyman genellikle daha duyarlı hissettirir.
Charles daha olgun ve geniş bir araç seti sunar: görsel düzenleyiciyle Rewrite Rules, istekleri tekrarlamak için Repeat, Map Local/Remote, oturumların Auto Save'i. Proxyman daha modern özelliklerle yanıt verir: JavaScript Scripting, otomatik simülatör yapılandırması ve cihazda trafiği görüntülemek için iOS yardımcısı. Charles karmaşık otomasyon senaryolarında (Rewrite, Repeat) avantaja sahipken, Proxyman betikler aracılığıyla hızlı ve esnek değişiklikte üstündür.
Proxyman, zaman sınırlaması olmadan temel işlevsellikle ücretsiz bir sürüm sunar. Pro sürümü (abonelik ~$12/yıl veya tek seferlik satın alma ~$59) gelişmiş özelliklerin kilidini açar: betik oluşturma, filtreler, dışa aktarma. Charles, 30 günlük deneme süresiyle lisans başına 50$'dır. Bağımsız geliştiriciler için Proxyman daha uygun fiyatlıdır; kurumsal ortamlar için fark önemsizdir.
Sıkça sorulan sorular
Proxyman, zaman sınırlaması olmadan temel HTTP/HTTPS trafik yakalama işlevselliğine sahip ücretsiz bir sürüme sahiptir. Ücretli abonelikler (Pro ve Team), betik oluşturma, gelişmiş filtreler, HAR dışa aktarma ve öncelikli destek ekler. Çoğu hata ayıklama görevi için ücretsiz sürüm yeterlidir.
Proxyman yerel bir macOS uygulamasıdır, ancak Charles'a benzer şekilde WiFi Proxy aracılığıyla Android cihazlardan trafiği yakalayabilir. Android cihazlar, bilgisayarın IP adresi ve Proxyman bağlantı noktasıyla HTTP proxy olarak yapılandırılır. Android öykünücüsü için IP 10.0.2.2 kullanın. HTTPS sertifikası ayrı olarak yüklenir.
İki yöntem vardır: Local Edit — bir isteğe çift tıklayın, Response sekmesini seçin, manuel olarak düzenleyin, ardından değiştirilen yanıtı uygulamaya göndermek için Execute'a tıklayın. Scripting — her istekte belirtilen URL'lere otomatik olarak değişiklikleri uygulayan bir JavaScript betiği yazın.
Evet, Proxyman biçimlere dışa aktarmayı destekler: HAR (HTTP Archive), Proxyman Session (.pxm), Curl Command (her istek için), Düz Metin. Dışa aktarma, bir istek veya istek grubu üzerindeki bağlam menüsü aracılığıyla kullanılabilir. HAR biçimi, Charles Proxy, Chrome DevTools ve çevrimiçi görüntüleyicilerle uyumludur.
Proxyman, Xcode aracılığıyla çalışan iOS Simülatörlerini otomatik olarak algılar ve manuel yapılandırma olmadan trafiklerini yönlendirir. Proxy başladığında, Proxyman macOS'ta Network Extension aracılığıyla tüm simülatörlere otomatik olarak uygulanan bir sistem proxy'si enjekte eder. HTTPS sertifikası da otomatik olarak yüklenir.
Özet
Anahtar teslim bir mobil uygulama geliştireceğiz
IT Sectr, 2017'den beri girişimler ve işletmeler için iOS ve Android uygulamaları oluşturmaktadır. Size danışmanlık yapacak ve en iyi çözümü önereceğiz.
Ayrıca okuyun