http.Fetch

  http.Fetch( string url, function onSuccess = nil, function onFailure = nil, table headers = {} )

Açıklama

Bir asinkron başlatır. GET HTTP sunucusuna bir istek. İç çağrılar HTTP.

Durum kodunu döndüren HTTP istekleri >= 400 Hâlâ bir başarı olarak kabul ediliyor ve Başarılı olmak Geri çağrı.

Başarısızlık çağrı geri dönüşü genellikle yalnızca DNS veya TCP hatalarında çağırılır (örneğin web sitesi kullanılamaz ya da alan adı yoktur).

Mümkün olanlara genel bir bakış Başarısızlık Mesajlar:

  • invalid url - Geçersiz/boş adres. (hiçbir talep yapılmadı)
  • invalid request - Steam HTTP lib bir http isteği oluşturmakta başarısız oldu.
  • error -Complete'ın ikinci argümanına gelince, bError, var. true.
  • unsuccessful -Complete'ın ilk argümanı üzerine, pResult->m_bRequestSuccessful, geri döndü. false.
Bu aynı isimli birden fazla başlığı gönderemez veya almaz.

Sorun İzleyici: 2232
Büyük bir bedenle yanıt veren HTTP istekleri geri dönebilir. unsuccessful Bir hata var. Aralık Dosyayı parçalar halinde indirmek için başlığı.
HTTP istekleri özel ağlardaki varış noktalarına (örneğin 192.168.0.1, veya 127.0.0.1İşe yaramayacak.
Özel ağlardaki varış noktalarına HTTP isteklerini etkinleştirmek için Komut Satırı Parametreleri -allowlocalhttp(Sadece özel sunucular)

Tüm başlıkların ayarlanmasına izin verilmez, burada bilinen kara listeye alınan başlıklar listesi bulunmaktadır:

host expect content-length proxy-authenticate accept-charset connection accept-encoding origin date

Argümanlar

1. dizgin Adres adresi:
Almak için web sitesinin URL'si.
2. fonksiyon Başarılı olmak = hiç
Başarıyla çağrılan bir fonksiyon.

Fonksiyon argümanları:
1. dizgin Vücut - Tarifi verilmedi.
2. numara büyüklüğü - eşittir. string.len(beden).
3. Tablo başlıkları - Tarifi verilmedi.
4. numara kod - HTTP başarı kodu.
3. fonksiyon Başarısızlık = hiç
Başarısızlık durumunda çağrılan fonksiyon.

Fonksiyon argümanları:
1. dizgin hata - Hata mesajı.
4. Tablo başlıkları = {}
Başlıklar için KeyValue tablosu.

Örnek

Web sayfasının HTML'ini almak için tipik kullanımı gösterir.

local theReturnedHTML = "" -- Boşluk http.Fetch( "https://www.google.com", -- onBaşarı fonksiyonu function( body, length, headers, code ) -- İlk argüman istediğimiz HTML. theReturnedHTML = body end, -- onBaşarısızlık fonksiyonu function( message ) - Başarısız olduk. print( message ) end, -- başlık örneği { ["accept-encoding"] = "gzip, deflate", ["accept-language"] = "fr" } )
Çıkış: Eğer sayfayı başarıyla aldıysa, değişken theReturnedHTML Geri döndürülen HTML'i düz metinde içermelidir.

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord