gpt4 book ai didi

java - 使用异步任务将大字符串从 Android 发送到 Servlet

转载 作者:行者123 更新时间:2023-11-30 02:03:00 25 4
gpt4 key购买 nike

在我的应用程序中,我通过 BasicNameValuePairs 向 Servlet 发送一个 String,这样:

        HttpClient httpClient = new DefaultHttpClient(); //127.0.0.1 - 10.201.19.153
HttpPost httpPost = new HttpPost(conn.urls.get("now"));

List<NameValuePair> nameValuePairs = new ArrayList<>(1);
nameValuePairs.add(new BasicNameValuePair("order", order));//"tours"
if(order.equals("reservation")){
String booking = new Gson().toJson(reservation);
nameValuePairs.add(new BasicNameValuePair("reservation", booking));
}

try {
// Add name data to request
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();

//...
} //...

除了使用 BasicNameValuePairs 之外,还有其他发送 String 的方法吗?或者这是唯一的方法?

最佳答案

我不完全知道为什么你需要一个替代品,但它是..除了使用 Gson,您还可以使用以下代码

{
...
List<NameValuePair> params = new ArrayList<>();
params.add(new BasicNameValuePair("string",longString));
makeHttpRequest(url,"POST", params);
...
}

public void makeHttpRequest(String url, String method, List<NameValuePair> params) {


try {
if (method == "POST"){
DefaultHttpClient httpClient= new DefaultHttpClient();
HttpPost httpPost =new HttpPost(url);
httpPost.setEntity(new UrlEncodedFormEntity(params));

HttpResponse httpResponse=httpClient.execute(httpPost);
HttpEntity httpEntity=httpResponse.getEntity();
is=httpEntity.getContent();

}else if (method == "GET"){

DefaultHttpClient httpClient=new DefaultHttpClient();
String paramString = URLEncodedUtils.format(params,"utf-8");
if (!paramString.matches(""))
{
url +="?"+paramString;
}
HttpGet httpGet = new HttpGet(url);
lru =url;

HttpResponse httpResponse = httpClient.execute(httpGet);
HttpEntity httpEntity=httpResponse.getEntity();
is=httpEntity.getContent();

}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}

希望对你有帮助

关于java - 使用异步任务将大字符串从 Android 发送到 Servlet,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31188217/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com