Merhaba, fırsat buldukça yavaş yavaş go(lang)'da kendimi geliştirmek istiyorum ve ufaktan bi giriş yaptım ama php'den sonra hem çalışma mantığı hem syntax baya zorluyo.
Go kullanan birilerinin varolması umuduyla daha hızlı ilerleyebilmek için zaman zaman küçük sorularım olcak. Yardımcı olursanız çok sevinirim.
Saygılar.
--------------------------------------
Soru 1:
func UrlTip1(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "url tip 1... gelen ek data %s", r.URL.Path[1:])
}
func UrlTip2(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "url tip 2... gelen ek data %s", r.URL.Path[len("/tip2/"):])
}
func main(){
http.HandleFunc("/", UrlTip1)
http.HandleFunc("/tip2/", UrlTip2)
http.ListenAndServe(":8080", nil)
}siteadi.com/abc --> urlTip1 fonksiyonu çalışıyo ve çıktısı şöyle --> url tip 1... gelen ek data abc
siteadi.com/tip2/abc --> urlTip2 fonksiyonu çalışıyo ve çıktısı şöyle --> url tip 2... gelen ek data abc
siteadi.com/a/b/c/d/e/f şeklinde bi url şu çuktıyı veriyor --> url tip 1... gelen ek data a/b/c/d/e/f
böyle tek tek url tanımlamak yerine gelen url ne olursa olsun aynı fonkiyona gönderip
a/b/c/d/e/f gibi bi' datayı "/" karakterinden parçalayıp, bu parçalara göre fonksiyon çalıştırmak veya import işlemlerimi yapmak istiyorum nasıl yapabilirim? Php'deki explode'a benzer bi'şey arıyorum?
Ayrıca yine 'url'le ilgili olarak xxxx.com/data1/data2?data3=x&data4=x şeklinde bi urldeki datayı nasıl alabilirim, regex vs kendim mi ayıklamalıyım yoksa ? ve &'lerle gelenleri almanın daha kolay bi' yolu var mı?