php ile google harita işaretleri göstermek

4 Cevap php

Hi everyone!

Im working on a google map project where the user can type in a address and gets the result of nearby restaurants ploted on a google map. So far no problems. I've created a ajax call where the backend outputs and xml and then with jquery I create the markers.

Ama şimdi benim sorunum.

With this ajax solution anyone can easily with firebug or other webdeveloper tool access the xml result that contains all names, latitudes, longitudes of the restaurant I have. I want to somehow protect the data that is showed.

How can I do this?

Nasıl jquery olmadan php ile google harita işaretçileri çizebilirsiniz? Bu yapılabilir mi?

thx in advance!

4 Cevap

Simple answer - you can't.


Long answer

Sen biraz Wikipedia overlay in Google maps gibi, sunucu tarafında bir görüntü bindirmesi çizebilir, ama çabaya değer olduğunu sanmıyorum.

Ayrıca php oturumda bir anahtar saklamak ve ilk sayfa yük JavaScript onu geçmek ve daha sonra verileri (tarayıcı oturumu başına benzersiz) doğru anahtar ile yalak Ajax talep değilse verileri dönüş yok olabilir. Bu sadece çerezleri desteklemeyen basit botlara karşı sizi koruyacaktır. Daha sonra karışıklık kazanç.

Ayrıca birisi veri kaynağı olarak sunucusunu kullanarak rakip siteyi yazmak olsaydı JavaScript ile çapraz-etki isteklerini yapamaz çünkü o hala Ajax istekleri kendi sunucusuna yalak tüneline sahip olacağını unutmayın bu nedenle bir sürü istekleri görecekti web-günlükleri ve kolaylıkla bu IP yasaklama olabilir aynı IP (kendi web-server). (Tek seferde ve daha sonra kendi sunucusundan hizmet indirmek sürece).

And is it really necessary? It's not like restaurant locations are top secret.

(API bir GMap2 nesne kullanarak) Markers interaktif bir harita için Google Maps istemci tarafında (JavaScript) üzerinde oluşturulan ve bu nedenle verileri tersine mühendislik savunmasız gerekir.

Eğer sunucuda harita verilerini oluşturmak istiyorsanız, o zaman istemci üzerinde statik işlevselliği sınırlıdır. Eğer görüntülemek istediğiniz işaretleri ve static map gösterecektir bölge hakkında bilgi içerir sunucuda bir URL oluşturmak için Google Static Maps API kullanabilirsiniz. Bu yaklaşım, verilerinizi korumak için istemci (hiçbir dinamik yakınlaştırma, kaydırma, vs işaretleyici halk ..) için bazı kullanılabilirlik kurban.

N.B. A belirlenir mühendis hala tarafından (bazı zorlukla da olsa) veri erişim mümkün olacak:

  • Harita bölgesini belirlemek için statik haritaları URL Ayrıştırma
  • Işaretleri bulmak ve konumlarını belirlemek için görüntü verileri analiz.

Verilerinizi korumak için tek yol tarayıcıya göndermeden önce haritayı kılmaktır. Bunu yaparken en almaya ya da sadece bir görüntü olurdu beri google tüm özellikleri serin uzak eşler olacaktır.

Google maps tarafından erişilebilir herhangi bir veri kundakçı ile birileri tarafından erişilebilir.

Verilerinizi kapmak için çalışan biri için hayat zor yapmak için yapabileceğiniz bazı şeyler:

Lütfen sunucu kodu, isteği istemci sayfasından geldiyse başlıkları görmek için inceleyin. Istek başka bir yerden geldiyse, hiçbir şey geri.

Eğer sunucudan dönmek veri kodlamak. Eğer sadece herhangi bir anda JavaScript değişkenleri bir restoran için düz metin var ki, mümkün olduğunca geç istemci kodunda Decode. Firebug ile bu şekilde birisi sadece doğrudan bir anda bir restoran okuyabilirsiniz.

Sunucu sadece biri, büyük bir yarıçap içinde restoranlar için sorar, böylece istek parametrelerini değiştirmek için Firebug kullanıyor olsa bile, bir kerede yerlerde sınırlı sayıda dönün. Bu şekilde onlar sadece sizin çözme fonksiyonunun bir kopyasını yerleştirdiğiniz kendi kodunu yapıştırmak için aynı anda birçok yerlerde için şifrelenen metin yakalayabilir.

Bunun yerine tek bir çağrı yerlerde bile sınırlı sayıda şifrelenen metin kapma, her restoranlar öbek istenen ekstra bir parametre belirterek ile, yerlerde çok az sayıda iade birden istekleri gönderebilir.

Onun kusursuz değildir, ancak verilerinizin önemli miktarda kapmak için birileri onları uzun zaman alabilir, ya da bu tür istek başlıklarını sızdırma gibi oldukça gelişmiş saldırı teknikleri gerektirir biri için.