如何在Android中将编码设置为Http Post请求

3

我该如何将UTF编码设置为Http Post请求?

这是我的代码片段。

HttpClient httpClient = getNewHttpClient();

    String user_agent = (String) httpClient.getParams().getParameter(
            CoreProtocolPNames.USER_AGENT)
            + " Android";
    httpClient.getParams().setParameter(CoreProtocolPNames.USER_AGENT,
            user_agent);
    httpClient.getParams().setBooleanParameter(
            "http.protocol.expect-continue", false);
    HttpResponse response;
    HttpPost post = new HttpPost(remoteUrl);
    System.out.println("Url:" + remoteUrl + "  values:"
            + nameValuePair.toString());
    post.setEntity(new UrlEncodedFormEntity(nameValuePair));


    response = httpClient.execute(post);
    int postStatus = response.getStatusLine().getStatusCode();
    String result = EntityUtils.toString(response.getEntity());
    System.out.println("result:" + result);
1个回答

2

您可以通过调用post.setHeader("HEADER NAME","HEADER VALUE");来设置任何标题。

在您的情况下,应该是

post.setHeader("Accept-Charset","utf-8");


4
它与这个一起运行:request.setEntity(new UrlEncodedFormEntity(params, HTTP.UTF_8));(说明:该代码段为Java代码,用于发送HTTP请求时设置请求参数编码方式) - Rakesh Gondaliya

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接