Leaflet: تدفق البلاط المنشور عبر HTTPS / SSL

تم إنشاؤها على ٣٠ يناير ٢٠١٥  ·  16تعليقات  ·  مصدر: Leaflet/Leaflet

أهلا،

كنت أتساءل عما إذا كان من الممكن خدمة مربعات خرائط Leaflet عبر اتصال https آمن؟ أحاول إنشاء خريطة نشرة داخل صفحة ويب https (تستخدم SSL) ، ولا يمكنني تحميل مربعات النشرة عبر http. هل هناك أي دعم لتحميل Leaflet Tiles عبر اتصال آمن؟

شكرا!

التعليق الأكثر فائدة

لقد قمت بحلها بفضل @ F1LT3R

كان لدي

http://{s}.tile.osm.org/{z}/{x}/{y}.png

وكان لدي مشكلة SSL وقمت بتغييرها إلى

https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png

وانتهى!

شكرا

ال 16 كومينتر

لا يوفر المنشور المربعات الخاصة به: ما هو المصدر الذي تستخدمه للبلاط؟

على سبيل المثال: إذا كنت تستخدم OpenStreetMap:

L.tileLayer('http://{s}.tile.osm.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <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: '&copy; <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> &mdash; 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: '&copy; <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

بدا الخطأ الذي حصلت عليه من قبل كما يلي:

screen shot 2015-07-29 at 3 07 40 pm

لقد استخدمت مزودًا مختلفًا في النهاية (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 &copy; <a href=\"http://openstreetmap.org\">OpenStreetMap</a> contributors, ' +
                        '<a href=\"http://creativecommons.org/licenses/by-sa/2.0/\">CC-BY-SA</a>, ' +
                        'Imagery &copy; <a href=\"http://mapquest.com\">Mapquest</a>',
                    id: 'examples.map-i875mjb7'
                }).addTo(map);
            });

لقد قمت بحلها بفضل @ 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: '&copy; <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 في خادمي الخاص ، وبالتالي فإن الإشارة إليهم في صفحة الفهرس الخاصة بي هي إشارة محلية والآن كل شيء يعمل بشكل صحيح.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات