1

ブラウザ経由で次のリクエストを送信しています

https://www.overpass-api.de/api/interpreter?data=[out:json];area[name=Nicaragua];(node[aeroway=aerodrome][aeroway=aerodrome](area);way[aeroway=aerodrome][aeroway=aerodrome](area);>;relation[aeroway=aerodrome][aeroway=aerodrome](area);>>;);out meta;

試してみると、有効なjsonが返されます。

ただし、コードで curlpp ドライバーを介して送信しようとすると、「不正な要求」ページが返されます。コードは次のとおりです。


#include <curlpp/cURLpp.hpp>
#include <curlpp/Easy.hpp>
#include <curlpp/Options.hpp>

int main() {
    std::string url = "https://www.overpass-api.de/api/interpreter?data= 
    [out:json];area[name=Nicaragua];(node[aeroway=aerodrome] 
    [aeroway=aerodrome](area);way[aeroway=aerodrome][aeroway=aerodrome] 
    (area);>;relation[aeroway=aerodrome][aeroway=aerodrome](area);>>;);out 
    meta;";
    std::cout << url << std::endl;
    curlpp::Cleanup cleaner;
    curlpp::Easy request;

    request.setOpt(new curlpp::options::Url(url));

    std::cout << request << std::endl;


    std::cout << curlpp::options::Url(url) << std::endl;
    return 0;
}

それでも、他の URL を試してみるとうまくいくでしょう... curl は特定の文字列フォーマットのみを受け入れますか?

4

0 に答える 0