В моем проекте мне нужно передать изображение и строку на сервер (на стороне сервера используется php). Я завершил загрузку изображений на сервер. Поэтому единственный вопрос - как я могу отправить строку на сервер. Может ли кто-нибудь сказать мне, как это сделать?

0
kevin320 10 Янв 2013 в 06:56
Определите конкретную область, где у вас есть проблема
 – 
ianace
10 Янв 2013 в 07:00
Извините, я ничего об этом не знаю, поэтому мне нужно учиться с нуля.
 – 
kevin320
10 Янв 2013 в 07:15

1 ответ

Лучший ответ

Вот код, который должен указать вам правильное направление.

Во-первых, используйте что-то вроде этого на стороне вашего приложения:

Java:

// generate your params:
String yourString = "This is the string you want to send";
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("your_string", yourString));

// send them on their way
try {
    DefaultHttpClient httpClient = new DefaultHttpClient();
    HttpPost httpPost = new HttpPost("http://xyz/your_php_script.php");
    httpPost.setEntity(new UrlEncodedFormEntity(nameValueParams));  
    HttpResponse httpResponse = httpClient.execute(httpPost);
    HttpEntity httpEntity = httpResponse.getEntity();   
} catch (UnsupportedEncodingException e) {
    e.printStackTrace();
} catch (ClientProtocolException e) {
    e.printStackTrace();
} catch (IOException e) {
    e.printStackTrace();
}

И возьмите его примерно так на стороне вашего сервера (http: //xyz/your_php_script.php):

PHP:

<?php
    if (isset($_POST['your_string']) && $_POST['your_string'] != '') {
        $your_string = $_POST['your_string'];
        echo 'received the string: ' . $your_string;
    } else {
        echo 'empty';
    }
?>

Отредактируйте в соответствии с вашим комментарием:

Это сложнее, потому что вам нужно использовать OutputStream и BufferedWriter, поэтому я не знаю, почему мое решение не сработает для вас. Используя Google, я нашел следующие ответы, которые могут вам помочь:

1
Community 23 Май 2017 в 13:24
Этого много, но не могли бы вы сказать мне, как это сделать с помощью HttpURLConnection?
 – 
kevin320
16 Янв 2013 в 16:41
Я обновил свой ответ, чтобы указать вам правильное направление.
 – 
burmat
16 Янв 2013 в 17:11