Android - Как я могу загрузить текстовый файл на сайт? - PullRequest
3 голосов
/ 11 июня 2010

Я хочу загрузить TXT-файл на веб-сайт, я признаю, что не рассматривал его подробно, но я рассмотрел несколько примеров и хотел бы получить более опытные мнения о том, собираюсь ли я правильное направление.

Вот что у меня есть:


DefaultHttpClient httpClient = new DefaultHttpClient();
HttpContext localContext = new BasicHttpContext();
private String ret;

HttpResponse response = null;
HttpPost httpPost = null;


public String postPage(String url, String data, boolean returnAddr) {

    ret = null;

    httpClient.getParams().setParameter(ClientPNames.COOKIE_POLICY, CookiePolicy.RFC_2109);

    httpPost = new HttpPost(url);
    response = null;

    StringEntity tmp = null;         

    try {
        tmp = new StringEntity(data,"UTF-8");
    } catch (UnsupportedEncodingException e) {
        System.out.println("HTTPHelp : UnsupportedEncodingException : "+e);
    }

    httpPost.setEntity(tmp);

    try {
        response = httpClient.execute(httpPost,localContext);
    } catch (ClientProtocolException e) {
        System.out.println("HTTPHelp : ClientProtocolException : "+e);
    } catch (IOException e) {
        System.out.println("HTTPHelp : IOException : "+e);
    } 
            ret = response.getStatusLine().toString();

            return ret;
}

И я называю это следующим образом:


postPage("http://www.testwebsite.com", "data/data/com.testxmlpost.xml/files/logging.txt", true));

Я хочу иметь возможность загрузить файл с устройства на веб-сайт.

Но, пытаясь таким образом, я получаю следующий ответ.


HTTP/1.1 405 Method Not Allowed

Я пытаюсь сделать правильный путь или я должен делать это по-другому?

1 Ответ

3 голосов
/ 11 июня 2010

Этот код выглядит разумно, ошибка от сервера и указывает, что POST не разрешен для этой страницы.

Вы отправляете буквальную строку «data / data / com.testxmlpost.xml / files/logging.txt».Если вы хотите опубликовать файл, используйте FileEntity.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...