أهلا،
كنت أتساءل عما إذا كان من الممكن خدمة مربعات خرائط Leaflet عبر اتصال https آمن؟ أحاول إنشاء خريطة نشرة داخل صفحة ويب https (تستخدم SSL) ، ولا يمكنني تحميل مربعات النشرة عبر http. هل هناك أي دعم لتحميل Leaflet Tiles عبر اتصال آمن؟
شكرا!
لا يوفر المنشور المربعات الخاصة به: ما هو المصدر الذي تستخدمه للبلاط؟
على سبيل المثال: إذا كنت تستخدم OpenStreetMap:
L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
يمكنك تغيير هذا لاستخدام HTTPS عن طريق إضافة s
إلى سلسلة البلاط:
L.tileLayer('https://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
شكرا لك على الرد السريع. كنت أستخدم سابقًا:
var url = 'http://otile{s}.mqcdn.com/tiles/1.0.0/map/{z}/{x}/{y}.jpeg',
attr ='Tiles Courtesy of <a href="http://www.mapquest.com/">MapQuest</a> — Map data {attribution.OpenStreetMap}',
service = new L.TileLayer(url, {subdomains:"1234",attribution: attr});
map.addLayer(service);
حاولت ما يلي:
L.tileLayer('https://{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
في تطبيقي ولم أتمكن من تحميل المربعات من خادم بلاط OSM. استلمت:
GET https://{s}.tile.osm.org/{x}/{y}/{z}.png net::ERR_INSECURE_RESPONSE
خطأ في Chrome. التطبيق الذي أقوم بتشغيله فيه له شهادة SSL الخاصة به. كيف يمكنني تحميل المربعات في تطبيق HTTPS الخاص بي؟
شكرا لك!
هذا ليس مصدر قلق المنشور. انها مجرد تحميل الصور عن طريق عنوان url. الأمان والشهادات هي منطق الخادم / التطبيق.
أرسل لي دعمهم عبر البريد الإلكتروني اليوم وقال ، "نعم ، استخدم https مع tile.openstreetmap.org - ليس لدينا شهادة للمجال المختصر." يعمل معي الآن!
هل ما زالت تعمل من أجلك؟ أستخدم https://tile.openstreetmap.org وأحصل على تحذير من الاتصال غير الآمن
كنت أعاني أيضًا من هذه المشكلة Sammaye:
التغيير من osm
إلى openstreetmap
في عنوان url ، وإضافة https://a.tile
كانت الحيلة بالنسبة لي.
https://a.tile.openstreetmap.org/{z}/{x}/{y}.png
بدا الخطأ الذي حصلت عليه من قبل كما يلي:
لقد استخدمت مزودًا مختلفًا في النهاية (mapquest):
$('#MapModal').on('shown.bs.modal', function (e) {
var data = $(e.relatedTarget).data();
var map = L.map('modalMap').setView([data.lat, data.long], 9);
L.tileLayer('https://otile2-s.mqcdn.com/tiles/1.0.0/map/{z}/{x}/{y}.png', {
maxZoom: 18,
attribution: 'Map data © <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors, ' +
'<a href=\"http://creativecommons.org/licenses/by-sa/2.0/\">CC-BY-SA</a>, ' +
'Imagery © <a href=\"http://mapquest.com\">Mapquest</a>',
id: 'examples.map-i875mjb7'
}).addTo(map);
});
تعمل طبقات ESRI مع https://esri.github.io/esri-leaflet/examples/basemap-with-labels.html
لقد قمت بحلها بفضل @ F1LT3R
كان لدي
http://{s}.tile.osm.org/{z}/{x}/{y}.png
وكان لدي مشكلة SSL وقمت بتغييرها إلى
https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png
وانتهى!
شكرا
مدهش! يسرني أني استطعت المساعدة.
يوم الثلاثاء ، 10 نوفمبر 2015 ، الساعة 3:51 صباحًا ، Ayoze Barrera [email protected]
كتب:
لقد قمت بحلها بفضل @ F1LT3R https://github.com/F1LT3R
كان لدي
http: // {s} .tile.osm.org / {z} / {x} / {y} .png http://tile.osm.org/٪7Bz٪7D/٪7Bx٪7D/٪7By٪ 7D.png
وكان لدي مشكلة SSL وقمت بتغييرها إلى
https: // {s} .tile.openstreetmap.org / {z} / {x} / {y} .png http://tile.openstreetmap.org/٪7Bz٪7D/٪7Bx٪7D/٪7By٪ 7D.png
وانتهى!
شكرا
-
قم بالرد على هذا البريد الإلكتروني مباشرة أو قم بعرضه على GitHub
https://github.com/Leaflet/Leaflet/issues/3186#issuecomment -155360520.
شكرا للتلميح حول خادم https. اعتقدت بالفعل أن OSM لن تدعم HTTPS على الإطلاق.
لقد قمت بالتبديل إلى "https: // {s} .tile.openstreetmap.org / {z} / {x} / {y} .png" بدلاً من "http: // {s} .tile.osm.org / { z} / {x} / {y} .png '. لكن بروتوكول https بطيء جدًا مقارنةً بالغير الآمن. يتم تحميل البلاط بشكل أسرع بكثير في حالة غير آمنة.
هل لدى أي شخص آخر نفس المشكلة؟
مرحبًا @ pango89 ، من الرائع أن تسمع أن المنشور مفيد!
ومع ذلك ، يتم استخدام أداة تعقب المشكلات هذه للإبلاغ عن الأخطاء ومناقشة الميزات الجديدة لمكتبة المنشورات نفسها.
للأسئلة حول استخدام Leaflet ، يرجى استخدام Stack Overflow أو GIS Stack Exchange .
قد تكون الأماكن الأخرى مناسبة أيضًا ، لا سيما بالنظر إلى حقيقة أن مشكلتك تتعلق بخادم تجانب معين (هذا خارجي تمامًا بالنسبة إلى Leaflet).
إذا كنت متأكدًا _ حقًا_ من أن هذا خطأ في المنشور ، فالرجاء فتح عدد جديد ، بدلاً من التعليق على سلسلة محادثات قديمة ومغلقة.
مرحبًا ghybs ،
شكرا جزيلا لردكم.
آسف بشأن المنشور في المكان الخطأ.
سوف أنشر استفساري على GIS Stack Exchange.
شكرا 👍
انتهى بي الأمر باستخدام عنوان url هذا بدلاً من ذلك ،
في حالة رغبة أي شخص آخر:
L.tileLayer('//{s}.tile.osm.org/{z}/{x}/{y}.png', {
attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
}).addTo(map);
بشكل أساسي 'http://{s}.tile.osm.org/{z}/{x}/{y}.png'
إلى '//{s}.tile.osm.org/{z}/{x}/{y}.png'
لقد جربت جميع الحلول هنا المتعلقة برمز L.tileLayer ، ولكن ما الذي فعلته بالنسبة لي: في ملف الفهرس الخاص بموقعي ، تم استدعاء المنشور Lealet.css و Lealet.js من موقع http - وتغييرهما إلى https كسر حتى موقع http الخاص بي ولم يصلح موقع https الخاص بي. لذلك قمت بنسخ الكود لكل من ملفات css و js وحفظها كملف Lealet.js و Lealet.css في خادمي الخاص ، وبالتالي فإن الإشارة إليهم في صفحة الفهرس الخاصة بي هي إشارة محلية والآن كل شيء يعمل بشكل صحيح.
التعليق الأكثر فائدة
لقد قمت بحلها بفضل @ F1LT3R
كان لدي
وكان لدي مشكلة SSL وقمت بتغييرها إلى
وانتهى!
شكرا