導航:首頁 > 編程語言 > webservice獲取json

webservice獲取json

發布時間:2025-01-29 03:49:17

① webservice怎樣接收json類型的參數

在webservice中的參賽類型可以為string類型,

傳進去之後用.NET自帶的JSS或者LetJson轉換為相應對象就可以了。

② 用java開發webservise怎麼返回json數據

標準的webservice是無法直接返回json數據的,因為標准webservice走soap協議,要求請求和相應報文都必須是xml
如果要返回json數據,只能在返回的xml中加屬性,裡面封裝json字元串

③ C#寫的WebService,連接資料庫後怎麼返回JSON字元串

Web Service介面方法
[WebMethod]
public string Project(string paramaters)
{
return paramaters;
}

實現代碼
public string Post(string methodName, string jsonParas)
{
string strURL = Url + "/" + methodName;

//創建一個HTTP請求
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strURL);
//Post請求方式
request.Method = "POST";
//內容類型
request.ContentType = "application/x-www-form-urlencoded";

//設置參數,並進行URL編碼
//雖然我們需要傳遞給伺服器端的實際參數是JsonParas(格式:[{\"UserID\":\"0206001\",\"UserName\":\"ceshi\"}]),
//但是需要將該字元串參數構造成鍵值對的形式(註:"paramaters=[{\"UserID\":\"0206001\",\"UserName\":\"ceshi\"}]"),
//其中鍵paramaters為WebService介面函數的參數名,值為經過序列化的Json數據字元串
//最後將字元串參數進行Url編碼
string paraUrlCoded = System.Web.HttpUtility.UrlEncode("paramaters");
paraUrlCoded += "=" + System.Web.HttpUtility.UrlEncode(jsonParas);

byte[] payload;
//將Json字元串轉化為位元組
payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
//設置請求的ContentLength
request.ContentLength = payload.Length;
//發送請求,獲得請求流

Stream writer;
try
{
writer = request.GetRequestStream();//獲取用於寫入請求數據的Stream對象
}
catch (Exception)
{
writer = null;
Console.Write("連接伺服器失敗!");
}
//將請求參數寫入流
writer.Write(payload, 0, payload.Length);
writer.Close();//關閉請求流

String strValue = "";//strValue為http響應所返回的字元流
HttpWebResponse response;
try
{
//獲得響應流
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
response = ex.Response as HttpWebResponse;
}

Stream s = response.GetResponseStream();

//伺服器端返回的是一個XML格式的字元串,XML的Content才是我們所需要的Json數據
XmlTextReader Reader = new XmlTextReader(s);
Reader.MoveToContent();
strValue = Reader.ReadInnerXml();//取出Content中的Json數據
Reader.Close();
s.Close();

return strValue;//返回Json數據
}
Url的格式樣例:"http://59.68.29.106:8087/IFT_Project.asmx"
methodName參數就是"Project"
JsonParas就是使用C# JavaScriptSerializer將List<Object>類型的對象序列化之後得到的值,數據格式:[{\"UserID\":\"0206001\",\"UserName\":\"ceshi\"}],Json數據中的中括弧代表由著多個對象集合序列化,花括弧代表一個對象序列化得到的結果,花括弧裡面的內容使用鍵值對的方式展示,多個屬性之間用逗號隔開,每個對象也用逗號隔開。
request.ContentType必須設置值,建議使用"application/x-www-form-urlencoded",設置其他值就很容易報伺服器內部異常,使用這種方式服務介面方法返回的是xml格式的字元串
payload將請求參數轉換成二進制來保存,此處一定要將「paramaters」加入其中,不然會報異常缺少參數,paramaters就是服務介面函數的參數名。函數中使用了URL編碼,注意在編碼的時候只需要將鍵和值進行編碼,不要將中間的=進行編碼,不然getResponse的時候會報異常。
request.ContentLength也是必須設置的值
在得到響應流之後Stream s = response.GetResponseStream();需要使用Reader來解析響應流,這個地方我使用的是XmlTextReader,因為我服務方法返回的是xml格式的字元串,其中Json數據在xml的Content中。在取出Json數據之後,再進行相應的反序列化即可得到對象。

④ webservice 返回json 介面 案例

問題:

我將結果內容用字元串拼接成Json數據並返回的時候,會在結果前面添加xml頭部,結果如下。

⑤ c# webservice怎麼樣返回json

首先.webservice 本身就是基於xml的;數據的傳遞就是xml;
其次.你的截圖叫報文.是用來提交soap1.1/1.2 以及接受返回值的xml報文格式
最後,你只需要在你的webservice的方法內,返回string類型;該返回值是一個標準的json格式即可.
當然,ws他不是一項技術而只是一種規范,你可以用很多種方法去實;
比如新建一個頁面(*.jsp/asp/aspx/php等等),通過方法在頁面上print你要輸出的json數據

⑥ 在java中從WebService調用的數據怎麼解析json

importorg.json.JSONObject;
try{
JSONObjectjson=newJSONObject();
inttotalProperty=json.getInt("totalProperty");
JSONObjectroot=json.getJSONObject("root");
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}

要取什麼值就用getXXX的方法來取

閱讀全文

與webservice獲取json相關的資料

熱點內容
maya粒子表達式教程 瀏覽:84
抖音小視頻如何掛app 瀏覽:283
cad怎麼設置替補文件 瀏覽:790
win10啟動文件是空的 瀏覽:397
jk網站有哪些 瀏覽:134
學編程和3d哪個更好 瀏覽:932
win10移動硬碟文件無法打開 瀏覽:385
文件名是亂碼還刪不掉 瀏覽:643
蘋果鍵盤怎麼打開任務管理器 瀏覽:437
手機桌面文件名字大全 瀏覽:334
tplink默認無線密碼是多少 瀏覽:33
ipaddgm文件 瀏覽:99
lua語言編程用哪個平台 瀏覽:272
政采雲如何導出pdf投標文件 瀏覽:529
php獲取postjson數據 瀏覽:551
javatimetask 瀏覽:16
編程的話要什麼證件 瀏覽:94
錢脈通微信多開 瀏覽:878
中學生學編程哪個培訓機構好 瀏覽:852
榮耀路由TV設置文件共享錯誤 瀏覽:525

友情鏈接