java - 构建一个帖子请求希望希伯来语数据

标签 java post

我有以下代码:

import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.nio.charset.Charset;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.cache.HeaderConstants;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.ContentType;
import org.apache.http.entity.mime.MultipartEntity;
import org.apache.http.entity.mime.MultipartEntityBuilder;
import org.apache.http.entity.mime.content.FileBody;
import org.apache.http.entity.mime.content.StringBody;
import org.apache.http.impl.client.HttpClientBuilder;


public class MyMain {

/**
 * @param args
 */
public static void main(String[] args) {
    // TODO Auto-generated method stub

    File file1 = new File("C:\\Users\\Avner.MARKETOLOGY\\Desktop\\a.jpg");

    URI uri;
    try {
        uri = new URI("http://www.amaya365.com/kinderPhp/uploadFiles.php");
        //uri = new URI("http://www.amaya365.com/kinderPhp/uploadFiles.php");
        HttpClient client = HttpClientBuilder.create().build();
        HttpPost post = new HttpPost(uri);
        post.getEntity();


        // Http Headers
        //post.addHeader("Accept", "text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2");
        post.addHeader("Connection", "keep-alive");

        //Charset chars = Charset.forName("UTF-8");

        MultipartEntityBuilder multiEntity = MultipartEntityBuilder.create();
        multiEntity.addPart("file", new FileBody(file1));
        //multiEntity.addPart("file2", new FileBody(file2));

        multiEntity.addTextBody("classid", "55555");        
        multiEntity.addTextBody("albumid", "111");


        //multiEntity.addBinaryBody("classid",ptext);

        // Credentials
        /*multiEntity.addPart("username", new StringBody(ServerData.username));
        multiEntity.addPart("password", new StringBody(ServerData.password));*/


        HttpEntity httpEntity = multiEntity.build();

        post.setEntity(httpEntity);

        HttpResponse response = client.execute(post);
        //HttpEntity entity = response.getEntity();

        //if (entity != null) {
            InputStream is = response.getEntity().getContent();
            /*int i = (int)response.getEntity().getContentLength();
            System.out.println(i);*/
            byte[] b = new byte[is.available()];

            String str = null;
            while(is.read(b) > -1){
                str += new String(b);

            }
            System.out.println(str);
            int statusCode = response.getStatusLine().getStatusCode();
            if (statusCode == 200) {

                System.out.println("upload completed succefully "+statusCode);
            }else{
                //try again
            }
        //}



    } catch (URISyntaxException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (ClientProtocolException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }





}

}

只要albumid和classid设置为数字或英文就可以正常工作。 当我使用希伯来租船人时,我得到了???关于帖子请求。

我应该怎么做才能通过 post 请求发送希伯来字符?

谢谢, 艾夫纳。

最佳答案

在使用 addTextBody 函数时,您可能应该使用 ContentType 参数。

关于java - 构建一个帖子请求希望希伯来语数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19686264/

相关文章:

java - 用 java 降序输出 Map.Entry<Sentence, Integer>

java - Clojure/Lein/打包到 jar 里

Java Play POST [参数缺失]错误?

java - 尝试连接 google qpx api 时出现 Http 错误 500

java - 如何打印音频文件中的单词

java - 重写compareTo(T t)

xml - 在 perl 中使用 XML 的 POST 请求

java - 如何在用户首选浏览器中打开网页作为 Java 中的发布请求

java - 将Java连接到MySQL数据库

jquery - 使用 Jquery 将变量通过 POST 传递到另一个页面