使用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
我的网址设置如下:
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中吗?发布正确的命令使用?
我在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)
答案 0 :(得分:0)
我在网址中不需要-d选项。 -d是curl中的一个选项,意味着包含数据。通过发送params,我将数据包含在httpclient调用中。取出-d后它可以工作。