Bugün ilkel şeylere vurmak istedim ve dünya çapında bir ağda bulabileceğinizi çok sayıda ve özel bir iş olmadan tanımlamak istedim. Neredeyse Kutsal Kutsal Protokol HTTP: Gönderi ve Sorguları Alın.
Birçoğu nedenini soracak mı? Kısa ve açık cevap vereceğim: Bu nedir ve neden gereklidir - herkes bilmiyor ve bunu öğrenmek isteyenler (BT alanında küçük bir anlayış), birçok ve birçok makalede ne yazdıklarını anlamayabilirler. Bu konuyla bu konuya adanmış birçok ve birçok makalede. Parmaklarımı açıklamaya çalışacağım, yazı nedir ve istekleri ve ne yediklerini.
Öyleyse, bir masal için yolculuğa başlayalım ...
Bu mesajı okuyorsanız, en azından internetin neye benzediğini ve internet sitesinin ne olduğunu biliyorsunuzdur. World Wide Web'in çalışmalarının tüm incestlerini azaltmak, kullanıcı ve site gibi olarak çalıştırılacağız. Ne kadar havalı olursa olsun, ancak bu iki konu bir şekilde birbirleriyle etkileşime girmelidir. İşte insanlar, örneğin, jestler, duygular ve konuşmalar sayesinde birbirleriyle iletişim kurun, hayvanlar bazı sesler yaparlar ve bir kişinin ve internet kaynağının "iletişim" olduğunda ne olur? Burada, insan konuşma-cevap planına aktarılabilecek bir bilgi alışverişi durumumuz var. Ayrıca, sorular ve cevaplar hem kullanıcı hem de siteye sorulabilir. Site hakkında konuştuğumuzda, soruları ve cevapları genellikle her zaman Internet sayfası formunda bir veya başka bir metinle ifade edilir. Kullanıcı hakkında sürdüğünde, her şey oluyor, GET ve POST istekleri sayesinde (elbette sadece değil, onlar hakkında konuşuyoruz).
Böylece konusumuzun nesnelerinin sitelerle "iletişim" için gerekli olduğunu öğrendik. Ayrıca, hem al hem de sonrası istekleri "Görev Soruları" ve "Cevaplar" için kullanılabilir. Ne kadar farklı? Her şey yeterince basit. Ancak, farklılıkları açıklamak için, çevrimiçi mağaza planının sitesini alacak bir örneği göz önünde bulundurmanız gerekir.
Muhtemelen, genellikle filtrelerle arama yapmak için başvuran çevrimiçi mağazalarda bir şey aradığınızda, sitenin adresi güzel "http://magaazin.ru" den korkunç "http: // magaazin'den döndü. RU /? Kategori \u003d Ayakkabı ve Boyut \u003d 38. Öyleyse, her şey, '?' Sembolinden sonra giden her şey ve GET istek siteniz var ve eğer çok doğruysanız, bu durumda siteye, "ayakkabılar" kategorisinde olanı isteyip istemediğiniz gibi. "38" boyutunun boyutu (bu örnek kafadan alınır, aslında her şey çok açık görünmeyebilir). Sonuç olarak, Site Adres çubuğunda, onları belirterek sorular sorabiliriz. Açıkçası, bu yöntemin birkaç dezavantajı var. İlk olarak, bilgisayardaki kullanıcının yanında olan herkes, tüm verileri sakince vurgulayabilir, bu nedenle bu tür istekleri şifre iletimi için kullanmanın oldukça arzusu değildir. İkincisi, site adresinin adresinden iletilebilen dizenin uzunluğu üzerinde bir kısıtlama vardır ve bu nedenle birçok veri iletilemez. Bununla birlikte, GET isteklerini kullanmanın şüphesiz avantajı, kullanmanın sadeliğidir ve siteye hızlı bir şekilde sorma yeteneğidir, bu da özellikle gelişirken faydalıdır, ancak bu başka bir hikaye ...
Şimdi posta istekleri hakkında konuşalım. Kartatçılı okuyucular, bu talebin arkadaşından ana farkının, iletilen verilerin gizliliği olduğunu yeniden yönlendirmiş olabilir. Çevrimiçi mağazayı göz önünde bulundurunsa, siteye kayıt yapmak için parlak bir örnek kullanılır. Site verilerinize sorar, bu verileri doldurursunuz ve "Kayıt" düğmesine tıkladığınızda, cevabınızı gönderin. Ve herhangi bir şekilde, bu veri görüntülenmez. Ayrıca, yeterince büyük miktarda bilgilerin talep edilebileceğini de belirtmekte fayda var - ve demek istediğim, isteğin herhangi bir kısıtlaması yok. Peki, eksi dokunulduysa, böyle bir istek hızlı bir şekilde üretilmeyecektir. Özel beceriler olmadan artık hiçbir yerde yoktur. Aslında olsa da, her şey çok zor değil, ama bu yine diğer hikaye.
Özetleyelim. Kullanıcı ve sitenin "iletişim" için gönderin ve istekleri gereklidir. Esasen birbirlerinin neredeyse tam tersidirler. Bazı talep türlerinin kullanımı, belirli duruma bağlıdır ve yalnızca bir tür isteği kullanır, son derece uygunsuzdur.
Şimdi en yaygın kullanılan iki HTTP yöntemi: GET ve POST. Ancak, bu iki "çam" web geliştiricisi arasında bile kaybetmeyi başardığı ortaya çıktı. Bu bir açıklamadır: her iki yöntem de aynı sonucu elde etmek için kullanılabilir. Ancak, yöntemlerden herhangi birinin hızlı kullanımının, kanal ve güvenlik delikleri üzerindeki büyük yüklerin olduğu, mevduatlara yol açabileceği unutulmamalıdır.
Bunu yeterince önlemek için, bu yöntemlerin randevularını ve farklılıklarını anlamak daha ayrıntılıdır.
Yöntemlerin adlarının değerine girerseniz, zaten çok daha net olacaktır. (İngilizce'den almak için), yani Veri isteğine uygulanmalıdır. POST (C İngilizce. Posta ile gönder) - Sunucuya veri göndermek için geçerlidir. Her şey son derece basit ve anlaşılabilir görünüyor. Ancak, kimler bir geri bildirim biçimiyle iş kartı sitesi tarafından daha da karmaşık bir şekilde geliştirmek isteyenler, soruyu daha yakın tanımak daha iyidir.
Güvenli ve güvensiz HTTP istekleri
HTTP 1.1 şartnamesi iki konsepte girer: güvenli ve güvenli olmayan bir istek veya daha doğru ise, yöntem.
Güvenli - Bunlar yalnızca bilgi talep edebilecek yöntemlerdir. İstenen kaynağı değiştiremezler, kullanıcı, diğer bireyler veya sunucu için istenmeyen sonuçlara yol açamazlar. Örnekler güvenlidir. Web sayfasının veya görüntünün bir HTML isteği vardır. Güvenli, kafa ve yöntemleri bulun.
Not
Gerçekte, el sanatları zanaatkarları zarar verebilir ve sorgular alabilir. Örneğin, istekleri odaklamak.
Güvensiz istekleri, önceden tahmin edildiği gibi, onları yeniden kullanırlarsa, potansiyel olarak kötü sonuçlara yol açabilir. Bu tür talepler, temyiz ettikleri kaynağın içeriğini değiştirebilir. Bu tür taleplerin örnekleri: mesaj gönderme, kayıt, çevrimiçi ödeme. Güvensizliğin gönderilmesi, koyun, yöntemleri silin.
İDEMPotent (IDEMPotent) yöntemleri
İDMPotans - Çok sayıda returoring ile, bilginin modası geçmiş olması dışında, aynı sonucu geri getirecek yöntemlerin bir özelliği. Bu, aynı URL'ye erişerken, tüm kullanıcıların birini ve en sıkı web sayfasını, görüntü, video vb. Göreceği anlamına gelir. Bu özellik kazandı, koydu, yöntemleri silin.
Ve şimdi alma ve gönderme yöntemleri hakkında daha fazla bilgi: Her kısa "özeti" yapın.
Almak.
- sunucudan veri almak için tasarlanmıştır;
- talebin gövdesi boş;
- sunucu tarafında işlenmiş, talebin boş kuruluşlarından dolayı sunucu kaynaklarının daha hızlı ve daha küçük tüketimi;
- değişkenlerin iletimi, adres çubuğunda meydana gelir (bu, kullanıcıyı da görür, teknik veriler sorgu hattında şımartır) ve bu nedenle değişkenler ve değerleri hakkında bilgi (veriler korunmaz);
- sunucuya az miktarda veriyi aktarabilir: tarayıcıya bağlı olan URL uzunluğunda sınırlamalar vardır, örneğin, IE6 \u003d 2KB. Bu, geliştiricilerin gezinmeleri Yahoo !;
- sadece ASCII karakterlerini iletebilir;
- böyle bir istek kopyalanabilir, kaydeder (örneğin, yer imlerinde);
- İstek önbelleğe alınabilir (bu kontrol edilebilir);
- kanal ve sunucudaki yükü daha da azaltmak için ve kısmi talepler mevcuttur;
- hTTP bağlantısını kırmaz (Sunucuda KeepAlive etkinleştirildiğinde).
İLETİ.
- sunucuya veri göndermek için tasarlanmıştır;
- veri aktarımı sorgu gövdesinde gerçekleşir;
- sunucunun yan tarafındaki işleme daha yavaş ve "daha zor", çünkü başlıklara ek olarak, sorgu gövdesini analiz etmeniz gerekir;
- Çok miktarda veri iletebilme;
- dosyaları aktarabilir;
- gönderilen post sayfası yer imlerine kaydedilemez;
- hTTP bağlantısını kırar;
- Çok az miktarda bilgiyi bile aktarmak için, çoğu tarayıcı minimum iki TCP paketini gönderir: başlık ve ardından talebin gövdesi.
Bu iki yöntemin bu kadar benzer olmadığı ortaya çıkıyor. Bir veya başkasının kullanımı görevden dolayı olmalıdır, ancak almanın varsayılan olarak kullanılması gerçeği değil, bununla birlikte çalışmak daha kolaydır. Elbette, çoğu durumda, özellikle hızlı Ajax oluştururken, ancak eksikliklerini unutmayın. Kendim için, yöntem seçiminde basit bir algoritma notu yaptım.
Bu gönderi, iki ana yöntemin yardımıyla İnternetteki veri transferinin ilkelerini açıklamayı amaçlamaktadır: GET ve POST. Detaylar için neredeyse ilginç olanlar için değiştirilebilir bir çalışma programının jeneratörü için talimatlara ek olarak yazdım.
Aşağıdaki adrese gidin (bu görsel bir açıklama içindir): http://calendarin.net/calendar.php?year\u003d2016 Lütfen tarayıcının adres çubuğunu not edin: calendarin.net/calendar.php ? Yıl \u003d 2016 Ana dosyaya, ardından "2016" değeri olan bir soru işareti (?) Ve "Yıl" parametresini takip eder. Öyleyse, bir soru işaretini izleyen her şey, bu bir istek. Her şey basit. Bir parametreyi değil, birkaç dakika, daha sonra, AMPERSAND (& )'yı bölmek gerekir. Örnek: calendarin.net/calendar.php. ? Yıl \u003d 2016 ve DISPLAY \u003d Çalışma günleri-ve-gün-kapalı
Ana dosya da denir, ardından "2016" değeri olan "Yıl" parametresi, ardından "Yıl" parametresi, ardından "çalışma günleri-ve" -Days "parametresi -off.
GET-parametreler doğrudan tarayıcı adres çubuğunda değişebilir. Örneğin, "2016" değerini "2017" e değiştirir ve tuşa basarak, 2017 için takvime gideceksiniz.
Bu veri iletimi gizli bir şekilde (sayfa adresi değişmez); Yani, neyin bulaştığını görmek için, yalnızca programı kullanabilirsiniz (komut dosyası). Örneğin, aşağıdaki araçta metinde karakterleri hesaplamak için, ilk veriler posta yöntemi ile iletilir: http://usefulonlinetools.com/free/Character-counter.php
Sorularınız, yorumlarınız ve e-postamız varsa hizmetinizdadır.
Önceki notada incelediğimiz GET yöntemine ek olarak, HTTP protokolünde bir sorgu gönderme yöntemi var. Posta yöntemi de pratikte çok sık kullanılır.
Eğer, GET yöntemine atıfta bulunmak için, talebi URL'ye yazmamız yeterli, daha sonra her şey başka bir prensipte posta yönteminde çalışır.
Bu tür bir istek yürütmek için, Web sayfasında bulunan Type \u003d "Gönder Özniteliği" ile düğmeye tıklamamız gerekir. Lütfen bu düğmenin öğede bulunduğunu unutmayın.
Kullanıcı metin alanına bir metne girerse ve "Gönder" düğmesini tıklatırsa, metin değişkeni, kullanıcının girdiği içeriğin içeriğiyle sunucuya gönderilecektir.
Basit kelimelerle gönderin ve istekleri alın
Bu değişken posta yöntemi tarafından gönderilecektir.
Formda yazarsanız:
Tescil olmadan telefonda ICQ
Uygun sevkiyat ve faks kabulü
Outlook eklerini engelleme: Sorunun özü nedir ve bununla nasıl başa çıkılır?
Windows Server'da Dosya Sunucusu
Kablosuz ağların güvenliği