如何使用OSM API版本0.6和curl删除OpenStreetMap中的节点

问题描述 投票:0回答:1

起初,我尝试了the instructions in the official wiki of OpenStreetMap尽管警告版本0.6。

当想要下载节点的数据但删除节点不起作用时,建议的方法仍然有效:

curl -u username:password -X DELETE 'https://api.openstreetmap.org/api/0.6/node/6345940173'

The documentation of the API声明“预期要删除的元素的有效XML表示”。我还需要做些什么才能让它发挥作用?

我的最后一次尝试不起作用:

curl -u username:password -X DELETE 'https://api.openstreetmap.org/api/0.6/node/6345940173' -T delete.xml

delete.hml:

<?xml version="1.0" encoding="UTF-8"?><osm><node id="6345940173" version="1" changeset="68272837" lat="48.8647893" lon="2.4283983"></node></osm>

它只是告诉:

变更集68272837于2019-03-18 21:01:43 UTC结束

当我使用echo -ne username:password|base64 --wrap 0编写凭证并且当我调用curl -H "Authorization: Basic <my_token>" -X DELETE 'https://api.openstreetmap.org/api/0.6/node/6345940173' -T delete.xml时,我获得了相同的结果。

curl openstreetmap
1个回答
0
投票

删除变更集是不可能的,因为它是不可变的。我感谢mmd提供这些信息。您可以通过仔细查看下图来了解原因:https://wiki.openstreetmap.org/w/images/thumb/6/67/OSM_API0.6_Changeset_successful_creation_V0.1.png/600px-OSM_API0.6_Changeset_successful_creation_V0.1.png

但是,我最后一次尝试中使用的语法似乎是正确的,并且应该与其他请求方法(PUT,POST)一起使用。

© www.soinside.com 2019 - 2024. All rights reserved.