2015-10-24 2 views
0

Мне нужно сделать запрос Get в модификации, и параметр будет Strings, разделенный пробелом.Как сделать модификацию запроса с помощью строк?

Например:

http://www.something.com?req=hello testing 

Когда мы попали в выше URL в браузере он станет так:

http://www.something.com/?req=hello%20testing 

Как я могу достичь с помощью модернизации? Я знаю базовый и могу назвать запрос Get от модернизации, но все они содержат одну строку или аналогичные параметры.

@GET("/search?req={req}") 
public Observable<List<Model>> getWarehouse (String req); 

Для вызова выше запроса я написал следующий код:

adapter.create(WarehouseAPI.class).getWarehouse() 
      .subscribeOn(Schedulers.newThread()) 
      .observeOn(AndroidSchedulers.mainThread()) 
      .subscribe(new Observer<List<Warehouse>>(){ 
    .......... 
    .......... 

Что мне нужно изменить для передачи строки с пробелами в коде выше?

ответ

0

Я не использовал retrofit. Это не вопрос модернизации. Поскольку это запрос GET, URL-адрес не должен содержать пробела, он должен быть закодирован либо с использованием +, либо % 20. Который снова декодируется на стороне сервера.

Посмотрите здесь http://www.ietf.org/rfc/rfc3986.txt

Для получения дополнительной информации

Is a URL allowed to contain a space?

Смежные вопросы