Для параметров GET есть две альтернативы:
Сначала: Как было предложено в следующем вопросе, вы можете просто использовать String и заменить параметры заполнителями такими значениями, как:
String uri = String.format("http://somesite.com/some_endpoint.php?param1=%1$s¶m2=%2$s",
num1,
num2);
StringRequest myReq = new StringRequest(Method.GET,
uri,
createMyReqSuccessListener(),
createMyReqErrorListener());
queue.add(myReq);
, где num1 и num2 - это переменные String, которые содержат ваши значения.
Второе: если вы используете более новый внешний HttpClient (например, 4.2.x), вы можете использовать URIBuilder построить свой Ури. Преимущество в том, что если ваша строка uri уже имеет параметры в ней, будет проще передать ее в URIBuilder
, а затем использовать ub.setQuery(URLEncodedUtils.format(getGetParams(), "UTF-8"));
, чтобы добавить ваши дополнительные параметры. Таким образом, вы не потрудитесь проверить, есть ли "?" уже добавлен в uri или пропустить некоторые & amp; таким образом устраняя источник потенциальных ошибок.
Для параметров POST, вероятно, иногда будет проще, чем принятый ответ, чтобы сделать это следующим образом:
StringRequest myReq = new StringRequest(Method.POST,
"http://somesite.com/some_endpoint.php",
createMyReqSuccessListener(),
createMyReqErrorListener()) {
protected Map getParams() throws com.android.volley.AuthFailureError {
Map params = new HashMap();
params.put("param1", num1);
params.put("param2", num2);
return params;
};
};
queue.add(myReq);
, например. для просто переопределения метода getParams()
.
В примере Andorid Volley Examples вы можете найти рабочий пример (наряду со многими другими основными примерами Volley).
Вы отдаете компонент в Route
реквизит Component
. Он называется component
с нижним регистром c
.
<Route exact path="/CuteGoatWebsite/Home/React" component={Home} />
@Толле ответил на мой вопрос. У меня был «Компонент» с заглавной буквы C вместо «Компонент»