導航:首頁 > 編程語言 > 安卓發送json數據

安卓發送json數據

發布時間:2023-11-18 21:47:17

Ⅰ Android Studio用httpPost向伺服器傳json數據,StringEntity不存在,求高手幫忙

看別人使用的類:主要用到的類有:org.apache.http.client.HttpClient 、org.apache.http.client.methods.HttpPost 和org.json.JSONObject,應該回包含這個答方法的

Ⅱ Android如何傳輸參數給一個url介面 參數是json格式

一般傳輸參數使用json類型或者map類型都是使用post方法。

使用json數據格式發送信息向伺服器端:
HttpClient httpClient = new DefaultHttpClient();
try {
HttpPost httpPost = new HttpPost(BASIC_URL + url);
List<NameValuePair> nameValuePair = new ArrayList<NameValuePair>();
JSONObject jsonObject = new JSONObject();
JSONObject jsonObject2 = new JSONObject();
jsonObject.put("uemail", userbean.getEmail());
jsonObject.put("password", userbean.getPassword());
jsonObject2.put("userbean", jsonObject);
nameValuePair.add(new BasicNameValuePair("jsonString", jsonObject
.toString()));
Log.i("lifeweeker", jsonObject2.toString());
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePair));

Ⅲ 求助android解析JSON的問題

換成抄這襲樣格式就對了:
{
'T1': [
{
'BU_ID': '63',
'BU_NAME': 'testBU'
}, {
'BU_ID': '61',
'BU_NAME': 'Sunford'
}, {
'BU_ID': '62',
'BU_NAME': 'ZXHTsss'
}, {
'BU_ID': '42',
'BU_NAME': 'Conti1'
}, {
'BU_ID': '43',
'BU_NAME': 'NewBU'
}
]
}

安卓 post json數據值怎麼傳遞數組

在開發Android、iOS等移動應用時經常需要以JSON的方式向伺服器傳輸圖片或者文字。如何實現呢,常見回的方法是答將圖片或文件轉換為字元串,如二進制的01字元串進,行傳輸,當伺服器接收到字元串後對其進行解析,並將...

Ⅳ android Retrofit 的post請求方式的參數用換成json么

1. JSON的數據格式
a) 按照最簡單的形式,可以用下面這樣的 JSON 表示名稱/值對:

{ "firstName": "Brett" }

b) 可以創建包含多個名稱/值對的記錄,比如:

{ "firstName": "Brett", "lastName":"McLaughlin", "email": "[email protected]" }

c) 可以創建值的數組

{ "people": [
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "[email protected]" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "[email protected]" }
]}

d) 當然,可以使用相同的語法表示多個值(每個值包含多個記錄):

{ "programmers": [
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "[email protected]" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "[email protected]" }
],
"authors": [
{ "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
{ "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }
],
"musicians": [
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" }
]
}

注意,在不同的主條目(programmers、authors 和 musicians)之間,記錄中實際的名稱/值對可以不一樣。JSON 是完全動態的,允許在 JSON 結構的中間改變表示數據的方式。

2. 在 javaScript 中使用 JSON
JSON 是 JavaScript 原生格式,這意味著在 JavaScript 中處理 JSON 數據不需要任何特殊的 API 或工具包。
2.1 將 JSON 數據賦值給變數
例如,可以創建一個新的 JavaScript 變數,然後將 JSON 格式的數據字元串直接賦值給它:

var people =
{ "programmers": [
{ "firstName": "Brett", "lastName":"McLaughlin", "email": "[email protected]" },
{ "firstName": "Jason", "lastName":"Hunter", "email": "[email protected]" }
],
"authors": [
{ "firstName": "Isaac", "lastName": "Asimov", "genre": "science fiction" },
{ "firstName": "Tad", "lastName": "Williams", "genre": "fantasy" }
],
"musicians": [
{ "firstName": "Eric", "lastName": "Clapton", "instrument": "guitar" }
]
}

2.2 訪問數據
將這個數組放進 JavaScript 變數之後,就可以很輕松地訪問它。實際上,只需用點號表示法來表示數組元素。所以,要想訪問 programmers 列表的第一個條目的姓氏,只需在JavaScript 中使用下面這樣的代碼

people.programmers[0].lastName;

注意,數組索引是從零開始的。

2.3 修改 JSON 數據
正如訪問數據,可以按照同樣的方式修改數據:

people.musicians[1].lastName = "Rachmaninov";

2.4 轉換回字元串
a) 在 JavaScript 中這種轉換也很簡單:

String newJSONtext = people.toJSONString();

b) 可以將任何 JavaScript 對象轉換為 JSON 文本。並非只能處理原來用 JSON 字元串賦值的變數。為了對名為 myObject 的對象進行轉換,只需執行相同形式的命令:

String myObjectInJSON = myObject.toJSONString();

說明:將轉換回的字元串作為Ajax調用的字元串,完成非同步傳輸。
小結:如果要處理大量 JavaScript 對象,那麼 JSON 幾乎肯定是一個好選擇,這樣就可以輕松地將數據轉換為可以在請求中發送給伺服器端程序的格式。

3. 伺服器端的 JSON
3.1 將 JSON 發給伺服器
a) 通過 GET 以名稱/值對發送 JSON
在 JSON 數據中會有空格和各種字元,Web 瀏覽器往往要嘗試對其繼續編譯。要確保這些字元不會在伺服器上(或者在將數據發送給伺服器的過程中)引起混亂,需要在JavaScript的escape()函數中做如下添加:

var url = "organizePeople.php?people=" + escape(people.toJSONString());
request.open("GET", url, true);
request.onreadystatechange = updatePage;
request.send(null);

b) 利用 POST 請求發送 JSON 數據
當決定使用 POST 請求將 JSON 數據發送給伺服器時,並不需要對代碼進行大量更改,如下所示:

var url = "organizePeople.php?timeStamp=" + new Date().getTime();
request.open("POST", url, true);
request.onreadystatechange = updatePage;
request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
request.send(people.toJSONString());

注意:賦值時格式必須是var msg=eval('(' + req.responseText + ')');

3.2 在伺服器上解釋 JSON
a) 處理 JSON 的兩步驟。
針對編寫伺服器端程序所用的語言,找到相應的 JSON 解析器/工具箱/幫助器 API。
使用 JSON 解析器/工具箱/幫助器 API 取得來自客戶機的請求數據並將數據轉變成腳本能理解的東西。
b) 尋找 JSON 解析器
尋找 JSON 解析器或工具箱最好的資源是 JSON 站點。如果使用的是 Java servlet,json.org 上的 org.json 包就是個不錯的選擇。在這種情況下,可以從 JSON Web 站點下載 json.zip 並將其中包含的源文件添加到項目構建目錄。編譯完這些文件後,一切就就緒了。對於所支持的其他語言,同樣可以使用相同的步驟;使用何種語言取決於您對該語言的精通程度,最好使用您所熟悉的語言。
c) 使用 JSON 解析器
一旦獲得了程序可用的資源,剩下的事就是找到合適的方法進行調用。如果在 servlet 中使用的是 org.json 包,則會使用如下代碼:

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
StringBuffer jb = new StringBuffer();
String line = null;
try {
BufferedReader reader = request.getReader();
while ((line = reader.readLine()) != null)
jb.append(line);
} catch (Exception e) { //report an error }
try {
JSONObject jsonObject = new JSONObject(jb.toString());
} catch (ParseException e) {
// crash and burn
throw new IOException("Error parsing JSON request string");
}
// Work with the data using methods like...
// int someInt = jsonObject.getInt("intParamName");
// String someString = jsonObject.getString("stringParamName");
// JSONObject nestedObj = jsonObject.getJSONObject("nestedObjName");
// JSONArray arr = jsonObject.getJSONArray("arrayParamName");
// etc...
}

Ⅵ android中這樣的JSON數據應該如何解析,

//json我的理解就是一系列鍵值對,只要KEY值對了,對應數據格式也對了,那就可以了!~
JsonObjectj=...//此處是獲取json的方法,自定
booleanb=j.getBoolean("result");//取出「result」對應的值,這里的結果應該
//是"true";
JsonArrayja=j.getJsonArray("asks");//取出「asks」對應的值,因為asks對應的值
//中含有方括弧,所以這是JsonArray型數據,需要取出進一步解析;JsonArray可以與數組
//進行比較理解,我個人是這樣的,供參考
for(inti=0;i<ja.length();i++){

JsonArrayja1=ja.getJsonArray(i);//獲取ja中的第一個元素,因為這個元素
//也是jsonArray,所以可以再進一步解析
doubled1=ja1.getDouble(0);//jsonArray中沒有getFloat()這個方法
//,自行轉型就可以了
doubled2=ja1.getDouble(1);//

}

以上,希望對你有所幫助

Ⅶ Android studio使用Retrofit框架,Get發送請求,Gson解析返回的json數據時報錯怎麼辦

資料庫一直以來給我的感覺就是——麻煩!!!
接觸了Realm之後才終於可以開開心心的使用資料庫了。
本文總結一些Realm資料庫的常用知識點,包括多線程訪問,以及如何與Retrofit2.0一起使用等...
看懂這些知識點之後,個人認為就可以在一般的項目中使用Realm了。

1. model類必須extends RealmObject,所有屬性必須用private修飾

2. model中支持基本數據結構:boolean, byte, short, ìnt, long, float, double, String, Dateand byte[]

3.若要使用List必須用RealmList<T>,或者繼承RealmList

4.與Retrofit2.*一起使用,通過Gson來解析Json數據並直接生成RealmObject,可參考如下寫法:

[java] view plain
Gson gson = new GsonBuilder()
.setExclusionStrategies(new ExclusionStrategy() {
@Override
public boolean shouldSkipField(FieldAttributes f) {
return f.getDeclaringClass().equals(RealmObject.class);
}

@Override
public boolean shouldSkipClass(Class<?> clazz) {
return false;
}

閱讀全文

與安卓發送json數據相關的資料

熱點內容
中間夾菜單裡面不能顯示壓縮文件 瀏覽:952
如何指導小學生參加編程比賽 瀏覽:275
物業的招標文件有哪些 瀏覽:452
保存游戲文件名非法或只讀 瀏覽:258
js怎麼做圖片時鍾 瀏覽:451
華為應用裡面有了app說明什麼 瀏覽:801
資料庫中xy是什麼意思 瀏覽:893
u盤打不開提示找不到應用程序 瀏覽:609
網站功能介紹怎麼寫 瀏覽:954
word在試圖打開文件時錯誤 瀏覽:108
主板無vga插槽怎麼連接編程器 瀏覽:521
錄視頻文件在哪裡刪除 瀏覽:881
word2013如何插入文件 瀏覽:233
proe教程百度網盤 瀏覽:197
如何控制遠程linux伺服器 瀏覽:740
it教學app有哪些 瀏覽:34
怎麼在ps摳的圖變成矢量文件 瀏覽:405
口袋妖怪銀魂安卓v11 瀏覽:1
網站上芒果tv的賬號都是什麼 瀏覽:104
帶公式的表格如何刷新數據 瀏覽:81

友情鏈接