Я пытаюсь получить доступ к открытым web-service Публичной кадастровой карты г. Москвы. https://pkk5.rosreestr.ru/
Моя задача заключается в том, что имея на руках x,y-координаты, определить в каком кадастровом квартале эта точка находится. Всё было бы просто замечательно, если вот эта документация была рабочей (пункт 2.1: СЕРВИСЫ ПОИСКА И ИДЕНТИФИКАЦИИ ОБЪЕКТОВ /features/type_id). Дело в том, что тот пример, который они приводят в документации в пункте "пространственный запрос, с точечным объектом в качестве параметра" не работает.
Вот этот самый пример:
sq={"type":"Point","coordinates":[39.70630608803698,48.3987722344 97535]}
т.е. должна была бы получиться ссылка примерно вроде этой, которая не является рабочей:
http://pkk5.rosreestr.ru/api/features/1?sq={"type":"Point","coordinates":[39.70630608803698,48.3987722344 97535]}
пробовал декодировать эту строчку: {"type":"Point","coordinates":[39.70630608803698,48.3987722344 97535]} через вот этот сервис
http://pkk5.rosreestr.ru/api/features/1?sq=%7B%22type%22%3A%22Point%22%2C%22coordinates%22%3A%5B39.70630608803698%2C48.3987722344%2097535%5D%7D
но ничего не вышло.
Или как решить обратную задачу? Есть координаты полигона (зоны) и необходимо получить кадастровые номера участков, попавших в заданную зону, где полигон должен быть замкнут. Так вот это также не работает:
http://pkk5.rosreestr.ru/api/features/1?sq={"type":"Polygon","coordinates":[[[x1,y1],[x2,y2],.....[x1,y1]]]}
http://pkk5.rosreestr.ru/api/features/1?sq={"type":"Polygon","coordinates":[[[37.1833546796268880 56.0068629405336580], [37.1828049072541380 56.0065611890887990], [37.1828692351763910 56.0065555167987480], [37.1832810451048490 56.0064977481455200], [37.1836817996382360 56.0064195620103010], [37.1854662686065610 56.0059286282822340], [37.1858928124140460 56.0064238718384290], [37.1853341905645180 56.0065776444735090], [37.1849872347986830 56.0066637873418140], [37.1846294993894160 56.0067349027446540], [37.1842630722654380 56.0067905468704770], [37.1838902009726620 56.0068303661535510], [37.1835129720616140 56.0068540964539570], [37.1835513995615800 56.0068988325998230], [37.1839286296195010 56.0068750123706640], [37.1843015013033310 56.0068351929721900], [37.1846679287952710 56.0067795487330140], [37.1850256638157080 56.0067085230315060], [37.1853726206283780 56.0066222902442310], [37.1859314032697700 56.0064685178454410], [37.1861462674448330 56.0067180291256010], [37.1854420548783860 56.0069150807441570], [37.1850905131312640 56.0069537905339770], [37.1835443875708120 56.0069133644169170], [37.1833546796268880 56.0068629405336580]]]}
Поэтому пришлось пойти заковыристым путем
Что я сделал?
Можно понять при помощи средств любого web-браузера, какие выполняются операции при выполнении тех или иных действий на сайте. Ручным образом просто кликаем по домику, и в режиме дебага (F12, вкладка Networks, фильтр по XHR) видим какие производятся GET-запросы (обычно их 3, но мне нужен самый первый)
Например, такой: https://pkk5.rosreestr.ru/api/features/1?text=55,715910%2037,269387&tolerance=8&limit=11&callback=jQuery19102846468790997936_1575551099067&_=1575551099068
Данные получил такие в JSON-формате:
jQuery19102846468790997936_1575551099067(
{
"features": [
{
"attrs": {
"address": "\u043e\u0431\u043b. \u041c\u043e\u0441\u043a\u043e\u0432\u0441\u043a\u0430\u044f, \u0440-\u043d \u041e\u0434\u0438\u043d\u0446\u043e\u0432\u0441\u043a\u0438\u0439, \u0432 \u0440\u0430\u0439\u043e\u043d\u0435 \u0434.\u041f\u043e\u0434\u0443\u0448\u043a\u0438\u043d\u043e",
"cn": "50:20:0010310:536",
"id": "50:20:10310:536"
},
"center": {
"x": 4148871.9967642617,
"y": 7502083.436242316
},
"extent": {
"xmax": 4148989.6945853354,
"xmin": 4148758.172545575,
"ymax": 7502150.5783624435,
"ymin": 7502012.341562664
},
"sort": 5020001031000536,
"type": 1
}
],
"status": 200,
"total": null
});
Но на любом другом компьютере эта ссылка не откроется, потому что если я правильно понял, сервер будет считать, что мы не прошли аутентификацию по протоколу OAuth2.
Вопросы:
Нашел вот такие ссылки:
https://pkk5.rosreestr.ru/arcgis_js_api/sdk/jsapi/oauthinfo-amd.html
https://github.com/Esri/jsapi-resources/tree/master/oauth
Если нет возможности доступиться до этих данных, то тогда следующие несколько вопросов:
Помогут ли в решении моей задачи вот такие метаданные, и если да, то как ими пользоваться?
Кстати, а как пользоваться вот этими открытыми web-сервисами? Может они смогут мне помочь? https://pkk5.rosreestr.ru/arcgis/rest/services Можно увидеть хоть один наглядный пример?
Нашел некоторые ссылки, которые могут быть полезны, но я так и не нашел конкретную функцию, которая бы могла решить мою задачу...
Общая ссылка на ArcGis REST API: https://tasks.arcgisonline.com/arcgis/rest/services/
https://developers.arcgis.com/
https://developers.arcgis.com/rest/services-reference/get-started-with-the-services-directory.htm
Ссылки на ArcGis REST API с доменом pkk5 (видимо РосРеестр построен на этой платформе):
https://pkk5.rosreestr.ru/arcgis/sdk/rest/index.html#
Ссылки, которые приблизительно могут помочь в решении моего вопроса, но я не уверен:
https://pkk5.rosreestr.ru/arcgis/rest/services/Cadastre/Cadastre/MapServer
https://pkk5.rosreestr.ru/arcgis/sdk/rest/index.html#/Output_formats/02ss00000078000000/
https://pkk5.rosreestr.ru/arcgis/rest/services/Address/Locator_OSM_Composite/GeocodeServer
https://pkk5.rosreestr.ru/arcgis/rest/services/Geometry/GeometryServer/fromGeoCoordinateString
https://pkk5.rosreestr.ru/arcgis/rest/services/Address/gkn/GeocodeServer/findAddressCandidates
https://pkk5.rosreestr.ru/arcgis/sdk/rest/index.html#//02ss00000015000000
Ссылки, на ArcGis для JavaScript, также с доменом pkk5: https://pkk5.rosreestr.ru/arcgis_js_api/sdk/jshelp/ags_rest.html
https://pkk5.rosreestr.ru/arcgis_js_api/sdk/jsapi/geometryservice-amd.html
Возможно полезная ссылка для разработчиков, пытающихся достучаться на уровне программного кода к сайтам, основанным на платформе ArcGis: https://developers.arcgis.com/java/latest/guide/access-the-arcgis-platform.htm
https://github.com/kadnet/kadnet.apiv2.dotnet
Общие полезные ссылки:
https://blogs.esri-cis.ru/2018/08/06/cadastre-arcgis-desktop/
http://gis-lab.info/qa/data.html
https://data.nextgis.com/ru/?lvl=regions&country=RU
https://play.google.com/store/apps/details?id=com.dataeast.kadastr
https://apirosreestr.ru/
http://forum-rosreestr.ru/forum30/topic539/
Существует ли ФГИС ЕГРН API?
https://rosreestr.ru/upload/Doc/10-upr/%D0%9E%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D0%B5_%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B_01_Statement_v01_R02.pdf
https://rosreestr.ru/upload/Doc/10-upr/%D0%BF367.pdf
https://rosreestr.ru/upload/Doc/10-upr/%D0%BF0614_22-12-17.pdf
https://ktotam.pro/promo/api
https://egrp365.ru/api.php
https://github.com/egrp365/egrp365-api
Также обнаружил, что в меню "Рисование" можно установить множество точек на карте и определить по ним в каком кадастровом квартале она лежит.
Более того, сайт позволяет произвести загрузку данных из kml-файла. Его структура приведена ниже:
<kml xmlns="http://www.opengis.net/kml/2.2">
<Document id="docid">
<name>Объекты пользователя</name>
<visibility>1</visibility>
<Folder id="fid">
<name>Объекты пользователя</name>
<visibility>1</visibility>
<Placemark id="id">
<name>Объект пользователя</name>
<visibility>1</visibility>
<Point>
<coordinates>37.603894,55.748886</coordinates>
</Point>
</Placemark>
<Placemark id="id">
<name>Объект пользователя</name>
<visibility>1</visibility>
<Point>
<coordinates>37.605209,55.748655</coordinates>
</Point>
</Placemark>
<Placemark id="id">
<name>Объект пользователя</name>
<visibility>1</visibility>
<Point>
<coordinates>37.605891,55.748457</coordinates>
</Point>
</Placemark>
<Placemark id="id">
<name>Объект пользователя</name>
<visibility>1</visibility>
<Point>
<coordinates>37.605735,55.749782</coordinates>
</Point>
</Placemark>
</Folder>
</Document>
</kml>
По координатам можно увидеть, что ПКК5 использует систему координат WGS84, но тогда появляется другая проблема. В нашей базе данных имеются объекты, координаты которых выражены в системе координат МСК-77.
Появляется другой вопрос: как произвести конвертацию из МСК77 (Местная Система Координат для города Москвы) в WGS84?
В процессе поиска по Google-поисковику обнаружил ГОСТ на сайте Министерства Обороны Российской Федерации. В этом документе описаны какие-то преобразования из одной системы координат в другую, но походу это не то, что мне нужно, потому что я не нашел ничего похожего с МСК-77
UPDATE: Возможно проблема заключается в TLS 1.2: https://support.microsoft.com/ru-ru/help/3140245/update-to-enable-tls-1-1-and-tls-1-2-as-default-secure-protocols-in-wi Подскажите, пожалуйста, более подробно, как настроить TLS?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Всем привет:) Не могу фон сделать под размер страницы, постоянно фон как бы не помещается на страницуВсе говорят про background-size: cover; Но он у меня...