httpYac Nedir

httpYac nedir? VS Code ve CLI için .http dosyası HTTP istemcisi rehberi; küçük bir örnek, betikleme, CI kullanımı ve bir GUI alternatifi ile.

INEZA Felin-Michel

INEZA Felin-Michel

25 June 2026

httpYac Nedir

Kurumsal İçin Apidog

Şirket İçi (On-Premises) Dağıtım

SSO ve RBAC

SOC 2 Uyumlu

Apidog Enterprise'ı Keşfedin

httpYac'i aradıysanız, muhtemelen Git'te tutabileceğiniz, VS Code içinde çalıştırabileceğiniz ve CI'da tekrar oynatabileceğiniz düz metin dosyalarından HTTP istekleri göndermenin bir yolunu arıyorsunuzdur. httpYac tam da budur: hem bir VS Code eklentisi hem de bir Node.js komut satırı aracı olarak sunulan bir .http/.rest dosya çalıştırıcısı. Bu kılavuz, nasıl çalıştığını açıklıyor, küçük bir örnek gösteriyor, ne zaman uygun olduğunu ele alıyor ve metin dosyalarını aştığınızda bir GUI artı CI yolunu işaret ediyor. Bu disiplin hakkında daha geniş bir bilgi için API test kılavuzumuza bakın.

button

httpYac aslında nedir

httpYac, .http dosya formatı etrafında oluşturulmuş açık kaynaklı bir HTTP istemcisidir. İstekleri düz metin olarak yazıp, ardından düzenleyicide bir tuş vuruşuyla veya terminalinizde tek bir komutla gönderebilirsiniz. Proje GitHub'da yer alıyor ve tam belgeleri httpyac.github.io adresinde bulunuyor.

Temel fikir basit. Bir istek, kodunuzun yanında bir metin dosyasında bulunur. Onu Git ile versiyonlarsınız. Bir çekme isteğinde incelersiniz. İster bir düzenleyicideki bir insan olun ister bir derleme sunucusundaki bir CI işi, aynı şekilde çalıştırırsınız. Bu git-yerel, düz metin modeli, httpYac'ın en büyük gücüdür ve birçok arka uç geliştiricisinin onu tercih etmesinin nedenidir.

Aracı iki parça oluşturur:

Her iki yüzey de aynı .http dosyalarını okuduğu için ayrı bir dışa aktarma adımı yoktur. Taahhüt ettiğiniz şey, çalıştırdığınız şeydir.

.http dosya formatı

Bir .http dosyası, ### ile ayrılmış isteklerin bir listesidir. Her istek, gönderdiği ham HTTP'ye benzer şekilde okunur. İşte küçük bir örnek.

### Get a user
GET https://api.example.com/users/42
Accept: application/json

### Create a user
# @name createUser
POST https://api.example.com/users
Content-Type: application/json

{
  "name": "Ada Lovelace",
  "email": "ada@example.com"
}

### Use a value from the previous response
GET https://api.example.com/users/{{createUser.response.body.$.id}}
Authorization: Bearer {{token}}

Burada birkaç şey oluyor. ### satırları istekleri ayırır. # @name yorumu bir isteğe ad verir, böylece yanıtına daha sonra başvurabilirsiniz. {{...}} yer tutucuları, önceki yanıtlardan zincirlenmiş değerler de dahil olmak üzere değişkenleri çeker. Bu format, popüler REST Client eklentisi ile paylaşılır, bu nedenle dosyalar genellikle küçük düzenlemelerle ikisi arasında taşınır.

Değişkenler ve ortamlar

httpYac değişkenleri .env dosyalarından, bir http-client.env.json dosyasından ve istek dosyasının içindeki satır içi tanımlardan okur. Yerel için bir değer kümesi, hazırlık (staging) için başka bir küme ve üretim için başka bir küme tutabilir, ardından isteği düzenlemeden bunlar arasında geçiş yapabilirsiniz.

@host = https://api.staging.example.com

### Login
# @name login
POST {{host}}/auth/login
Content-Type: application/json

{ "user": "{{USERNAME}}", "pass": "{{PASSWORD}}" }

Sırlar, Git'ten uzak tuttuğunuz .env dosyalarında kalır, bu nedenle istek dosyasının kendisi commit için güvenlidir. CI'da, aynı değişkenler ortam değişkenlerinden veya pipeline sırlarından gelir.

Betikleme ve onaylamalar

httpYac'in temel bir istek göndericinin ötesine geçtiği yer burasıdır. İstek içine, çalışmadan önce verileri ayarlamak veya sonrasında yanıtı kontrol etmek için JavaScript gömebilirsiniz. Ön istek ve son istek blokları bir Node bağlamında çalışır, böylece bir imza hesaplayabilir, bir token saklayabilir veya gövdeyi onaylayabilirsiniz.

### Login and capture token
# @name login
POST {{host}}/auth/login
Content-Type: application/json

{ "user": "{{USERNAME}}", "pass": "{{PASSWORD}}" }

{{
  // post-request script
  test("status is 200", () => {
    client.assert.strictEqual(response.statusCode, 200);
  });
  exports.token = response.parsedBody.token;
}}

Yakalanan bu token daha sonra bir sonraki isteğe {{token}} olarak erişilebilir olur. Betikleme modeli esnektir, bu da tam bir test framework'ü kurmadan mantık isteyen geliştiriciler için cazibenin bir parçasıdır.

httpYac'i CI'da Çalıştırma

CLI, "benim makinelerimde çalışıyor"dan "pipeline'da çalışıyor"a köprüdür. Yükleyin ve dosyalarınızı işaret edin.

npm install -g httpyac

# Run a single file
httpyac send api/users.http

# Run every request in a folder, pick an environment, fail on assertion errors
httpyac send --all --env staging "api/**/*.http"

Bir onaylama başarısız olduğunda httpYac sıfır olmayan bir kodla çıkar, bu da bir CI işinin bir derlemeyi kırmızı olarak işaretlemesi için gereken şeydir. Test raporlayıcıları için JUnit tarzı çıktı verebilir, böylece sonuçlar günlüklerde kaybolmak yerine CI panonuzda görünür. Bu komutu GitHub Actions, GitLab CI veya Jenkins'e bırakın ve VS Code'da düzenlediğiniz aynı dosyalar artık birleştirmelerinizi (merges) kontrol edecektir.

httpYac ne zaman kullanılır

httpYac, belirli bir ekip ve iş akışı şekline uyar. Bunların çoğu doğru olduğunda onu tercih edin.

Durum httpYac neden uygun
VS Code'da yaşıyorsunuz Eklenti istekleri kodunuzun yanında tutar, bağlam değişikliği olmaz
İstekleri Git'te istiyorsunuz Düz metin temizce farklılaşır ve çekme isteklerinde incelenir
Ekibiniz kodda rahat Betikleme ve .env dosyaları belirli bir geliştirici yeterliliği gerektirir
Birkaç odaklanmış kontrol çalıştırıyorsunuz Eklenmesi kolay, benimsenecek bir platform yok
Zaten REST Client dosyalarını kullanıyorsunuz Paylaşılan format geçişi kolaylaştırır

Geliştirici olmayanların istekleri çalıştırması veya düzenlemesi gerektiğinde, büyük istek koleksiyonlarının görsel bir görünümünü istediğinizde, dosyaları birbirine bağlamadan paylaşılan ortamlara ve ekip senkronizasyonuna ihtiyacınız olduğunda veya tek bir yerde daha zengin raporlama ve yük testi istediğinizde daha az uygun olur. Düz metin ergonomisi, paket büyüyüp ekip genişleyene kadar bir özelliktir.

httpYac ile GUI ve CI platformu karşılaştırması

httpYac bir metin dosya çalıştırıcısıdır. Apidog farklı bir modeldir: aynı zamanda CI'da da çalışan, GUI odaklı bir API platformudur. Soyut olarak hiçbiri "daha iyi" değildir; sorunu zıt uçlardan çözerler. Başlangıçta bir noktayı açıklığa kavuşturalım: Apidog, .http dosyalarını doğal olarak çalıştırmaz veya ayrıştırmaz. Eğer doğruluk kaynağınız bir .http dosyaları klasörü ise, httpYac bunları doğrudan çalıştırır ve dürüst avantajı budur.

İki ürünün genellikle seçimi belirleyen şeyler üzerindeki karşılaştırması şöyle.

Yetkinlik httpYac Apidog
İstek kaynağı Git'teki düz .http/.rest dosyaları Çalışma alanında görsel istekler, artı OpenAPI içe aktarma
Düzenleme yüzeyi VS Code veya herhangi bir düzenleyicide metin Form alanları ve şema farkındalığına sahip görsel oluşturucu
Değişkenler ve ortamlar .env / JSON dosyaları, satır içi değişkenler Ekip senkronizasyonlu, paylaşılan, yönetilen ortamlar
Onaylamalar İstek betiklerinde JavaScript Görsel onaylamalar artı betikleme
CI yürütme httpyac send apidog run
Mocking ve belgeler Dahili değil Dahili mock sunucusu ve otomatik oluşturulan belgeler
En iyisi Git-yerel metin dosyaları isteyen geliştiriciler Tasarım, test, mocking ve belgeleri tek bir yerde isteyen ekipler

Görsel tarafı isterseniz, Apidog dosyaları elle yazmadan istekler oluşturmanıza ve düzenlemenize olanak tanır, ardından aynı senaryoları CI'da apidog run ile çalıştırır. apidog run referansı, komutu, ortam bayraklarını ve raporlayıcıları ayrıntılarıyla açıklar. Ayrıca aynı çalışma alanında bir mock sunucusu ve belgeleme de elde edersiniz; bu, bir metin dosya çalıştırıcısının diğer araçlara bıraktığı bir şeydir. Eğer mocking gerçek bir ihtiyaçsa, REST uç nokta mocking araçları derlememiz seçenekleri kapsar.

Dürüst bir özet: Tüm iş akışınız "Git'te dosyalar, düzenleyicide çalıştırma, CI'da tekrar oynatma" olduğunda ve ekibiniz tamamen geliştiricilerden oluştuğunda httpYac kazanır. Paylaşılan bir görsel çalışma alanı, yönetilen ortamlar, mocking ve CI çalıştırmalarının yanı sıra belgeler istediğinizde Apidog kazanır. Bazı ekipler her ikisini de kullanır; httpYac'ı hızlı yerel kontroller için, Apidog'u ise ekibin doğruluk kaynağı olarak kullanır.

Sıkça sorulan sorular

httpYac ücretsiz mi?

Evet. httpYac, MIT lisansı altında açık kaynaktır. Hem VS Code eklentisi hem de CLI ücretsiz olarak kurulabilir ve kullanılabilir. İstekleri yerel olarak veya CI'da çalıştırmak için ücretli bir katman veya hesap gereksinimi yoktur.

httpYac, REST Client eklentisinden nasıl farklıdır?

Her ikisi de aynı .http dosya formatını kullanır, bu nedenle dosyalar büyük ölçüde taşınabilir. httpYac, başsız ve CI çalıştırmaları için bağımsız bir CLI, daha geniş ortam yönetimi ve daha zengin bir betikleme ve onaylama modeli ekler. REST Client yalnızca düzenleyici içindir. Yalnızca VS Code içinde istek gönderiyorsanız, her ikisi de işe yarar; ancak aynı dosyaları bir pipeline'da çalıştırmanız gerekiyorsa, httpYac'in CLI'ı ayırt edici özelliktir. Düzenleyici araçları hakkında daha geniş bir görünüm için, API testi için VS Code eklentileri listemize bakın.

httpYac, Postman'ın yerini alabilir mi?

Git'te düz metin istekleri ve CI çalıştırmaları isteyen bir geliştirici için httpYac, Postman'ın kullanıldığı birçok şeyi GUI, paylaşılan koleksiyonlar ve yerleşik mocking dışında kapsar. Ekibinizin görsel bir çalışma alanına, yönetilen ortamlara ve birlikte mocking'e ihtiyacı varsa, Apidog gibi bir platform daha yakından eşleşir. Seçenekleri API test istemcileri özetimizde karşılaştırın.

httpYac, GraphQL ve gRPC'yi destekliyor mu?

httpYac, GraphQL isteklerini ve düz REST'in ötesinde, bazı akış (streaming) durumları da dahil olmak üzere çeşitli protokolleri işler. Destek sürümler arasında geliştiğinden, güncel protokol listesi için resmi belgelere bakın. REST için .http formatı, yaygın fiilleri, başlıkları, gövdeleri ve kimlik doğrulama akışlarını kutudan çıktığı haliyle kapsar.

Sonuç

httpYac, net bir ihtiyaca temiz bir cevaptır: düz metin dosyalarından HTTP istekleri göndermek, bunları VS Code'da çalıştırmak ve ayrı bir dışa aktarma adımı olmadan CI'da tekrar oynatmak. Git-yerel modeli, betikleme yetenekleri ve ücretsiz CLI'ı, isteklerinin repoda yaşamasını isteyen geliştirici yoğun ekipler için güçlü bir seçenektir. Dezavantajı ise her şeyin kod, dosya ve geliştirici yeterliliği varsaymasıdır.

İstekleri görsel olarak oluşturmayı, yönetilen ortamları paylaşmayı, uç noktaları mock etmeyi ve CI'da testleri çalıştırmaya devam ederken belgeler oluşturmayı tercih ederseniz, Apidog tüm bunları tek bir çalışma alanında kapsar. Apidog'u indirebilir ve paketinizi apidog run ile çalıştırabilir veya hızlı yerel kontroller için httpYac'i tutarken Apidog'un ekibin doğruluk kaynağı olmasına izin verebilirsiniz. Ekibinizin çalışma şekline uygun modeli seçin.

button

API Tasarım-Öncelikli Yaklaşımı Apidog'da Uygulayın

API'leri oluşturmanın ve kullanmanın daha kolay yolunu keşfedin