Как вы можете отправить веб-запрос из приложения Android? - PullRequest
0 голосов
/ 23 марта 2012

Прошу прощения, что у меня нет знаний по этой теме, но у меня очень мало, если вообще есть, знаний о сети, PHP, веб-запросах и тому подобном.По сути, я хочу отправить строку на веб-сайт для ведения журнала с использованием переменных $ _ GET .Как я могу отправить строку, используя этот метод, из приложения?

(Я не могу ответить самостоятельно в течение еще 6 часов, но если я МОГУ, вот как это будет выглядеть, с кодом вответ, конечно. Просто не хотел отнимать от первоначального вопроса.)

В конце концов, код , найденный здесь , сработал.Приложение отправляет запрос на веб-сервер, который затем добавляет строку из переменной $ _GET в файл журнала!Потребовалось несколько часов, чтобы понять, хотя.: Л

Ответы [ 2 ]

5 голосов
/ 23 марта 2012

Вы можете использовать библиотеку Apache Commons HttpClient для выполнения HTTP-запросов.

URI HTTP-запроса состоят из схемы протокола, имени хоста, необязательного порта, пути к ресурсу, необязательного запроса инеобязательный фрагмент.

HttpGet httpget = new HttpGet(
     "http://www.google.com/search?hl=en&q=httpclient&btnG=Google+Search&aq=f&oq=");

Строка запроса также может быть сгенерирована из отдельных параметров:

List<NameValuePair> qparams = new ArrayList<NameValuePair>();
qparams.add(new BasicNameValuePair("q", "httpclient"));
qparams.add(new BasicNameValuePair("btnG", "Google Search"));
qparams.add(new BasicNameValuePair("aq", "f"));
qparams.add(new BasicNameValuePair("oq", null));
URI uri = URIUtils.createURI("http", "www.google.com", -1, "/search", 
    URLEncodedUtils.format(qparams, "UTF-8"), null);
HttpGet httpget = new HttpGet(uri);
System.out.println(httpget.getURI());
0 голосов
/ 09 июля 2012

wanstein прав, но URIUtils.createURI устарела (4.2.1), поэтому лучше использовать URIBuilder:

URI uri = new URIBuilder()
                .setFragment("http")
                .setHost(HOST)
                .setPath(path)
                .setQuery(URLEncodedUtils.format(qparams, "UTF-8"))
                .build();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...