Используя Android, я пытаюсь отправить запрос curl с этим форматом:
curl http://appname.herokuapp.com/send -d "user_id=pPPu4yZap2&title=hello&body=message to mjpablo23"
Я пытаюсь использовать AsyncHttpClient: https://guides.codepath.com/android/Using-Android-Async-Http-Client
У меня есть url, настроенный так:
String url = "http://appname.herokuapp.com/send -d ";
Я вызываю http-клиент, как это:
AsyncHttpClient client = new AsyncHttpClient();
params = new RequestParams();
String user_id = "pPPu4yZap2";
params.put("user_id", user_id);
params.put("title", "the title");
params.put("body", "the message");
client.post(url, params, new JsonHttpResponseHandler() {
});
Однако я не уверен, что делать с опцией-D. Должен ли я включать его в URL-адрес? Post является правильной командой для использования?
Я получаю эту ошибку в Android:
Process: com.android.todo4group, PID: 27042
java.lang.IllegalArgumentException: Illegal character in path at index 45: http://appname.herokuapp.com/register -d
at java.net.URI.create(URI.java:733)
at com.loopj.android.http.AsyncHttpClient.getURI(AsyncHttpClient.java:1542)
Мне не нужна опция-d в url. — d-это параметр в curl, который означает включить данные. Отправляя params, я включаю данные в вызов httpclient. Оно работает после принимать вне-d.