gpt4 book ai didi

java - 在 Android 中使用 List 创建一个 json 字符串

转载 作者:可可西里 更新时间:2023-11-01 16:33:54 29 4
gpt4 key购买 nike

我想用 Android 向 url 发送一个 http 请求。我是一名 iOS 开发人员,现在正在尝试学习 Android。我曾经像下面这样在 iOS 中发送 JSON 字符串

 {"function":"login", "parameters": {"username": "nithin""password": "123456"}}

我如何在 Android 中发送这个?我试过 List<NameValuePair> 但找不到合适的解决方案。

我尝试过的完整代码 -

    HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(URL);

try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("function", "login"));
nameValuePairs.add(new BasicNameValuePair("username", "nithin"));
nameValuePairs.add(new BasicNameValuePair("password", "123456"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));

// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);

} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}

最佳答案

我认为 JsonStringer 在这里对您来说既简单又有用..

试试这个:

   HttpPost request = new HttpPost(URL);
request.setHeader("Accept", "application/json");
request.setHeader("Content-type", "application/json");
JSONStringer vm;
try {
vm = new JSONStringer().object().key("function")
.value(login).key("parameters").object()
.key("username")
.value(nithin).key("password").value("123456")
.endObject().endObject();
StringEntity entity = new StringEntity(vm.toString());
request.setEntity(entity);
HttpClient httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(request);

关于java - 在 Android 中使用 List<NameValuePair> 创建一个 json 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21482378/

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