2017-08-28 47 views
0

我正尝试使用改进来构建速度数据查询URL。下面是URL如何最终应该是:非常具体的查询及其在改造2上的参数

http://overpass-api.de/api/interpreter?data=[out:json];way(around:500,50.117633,8.681930)[maxspeed];out; 

我需要用户输入要查询的部分是:

(around:500,50.117633,8.681930) 

500 - 半径

50.117633 - 纬度

8.681930 - 经度

我只是翻新的初学者,但据我所知,Endpoint接口中的@Query注释仅适用于?data=和这种类型的查询参数。

这是我想这样做,但它显然是行不通的(我试过@Path太):

@GET("/interpreter?data=[out:json];way(around:{radius},{latitude},{longitude})[maxspeed];out;") 
    Call<SpeedData> getSpeedData(@Query("radius") int radius, 
           @Query("latitude") double latitude, 
           @Query("longitude") double longitude); 

我应该如何实现它的改造,因为只有一个查询参数?data当我需要使用里面有3个动态参数?data

回答

0
@GET("/interpreter") 
Call<SpeedData> getSpeedData(@Query("data") String data); 

使用一个小功能 -

public String addParseData(String output,String addedData) { 
     return output.concat(addedData).concat(";"); 

数据将收到解析字符串。

+0

感谢您的回答,不幸的是它并没有真正的工作,我不知何故需要添加一个查询参数,其中会有一些参数。 (查询中的查询) – Power3000

+0

我c ...因为没有&唯一;这只是一个长字符串,你需要解析不适更新答案 –

+0

这是正确的,传递一个字符串作为数据参数 – Power3000