2013-04-11 49 views
0

我們應該送JSON數組或在任何情況下正常陣列作爲查詢字符串在senchatouch2發送JSON數組作爲查詢字符串在senchatouch2

+0

你是什麼意思「作爲查詢字符串?」 – 2013-04-11 05:12:53

+0

要訪問web服務,我們將發送查詢字符串參數knw – Annie 2013-04-11 06:04:37

+0

要在數據庫中存儲詳細信息,我們必須使用WEBSERVICE來訪問該數據庫。使用POST方法,我將值作爲QueryString發送到webserviceURL – Annie 2013-04-11 06:06:03

回答

0

雖然我們使用POST方法發送參數煎茶Touch2採用jsonData在AJAX請求一樣,

Ext.Ajax.request({ URL: '', 方法: 'POST', disableCaching:假, 標頭:{ '接受': '應用/ JSON', '內容 - 類型': '應用/ JSON' }, jsonData:{ 姓:FNAME // { 「姓」:[ 「山姆」, 「保」]}} , 成功:功能(響應) { console.log(response.responseText); }, failure:function(response) console.log(response.responseText); }, });

0

您只能在URL字符串發送,所以如果你有JSON然後使用Ext.JSON.encode使它是字符串,如果您有JS Array使用toStringjoin方法將數組附加到URL之前將其平鋪。

既然你說查詢字符串,所以我想你,而不是做POST請求。

[編輯] 看看你的評論似乎你想發送一些數據爲創建服務,但在這種情況下,你不應該發送數據作爲查詢字符串,你應該發送它在消息正文。以下是例子,JSON數據發送給服務:

var obj = new Object(); 
obj.loginEntry = new Object(); 
obj.loginEntry.userid = username; 
obj.loginEntry.password = password; 
var data = Ext.JSON.encode(obj); 
Ext.Ajax.request({ 
     url : 'http://myserver:port/service/entity', 
     method : "POST", 
     headers: { 
      /* Important because default is 
      * Content-Type:application/x-www-form-urlencoded; charset=UTF-8 
      * which is not supported by service 
      */ 
      'Content-Type': 'application/json' 
     }, 
     params : data, 
     success : function(response) { 
     }, 
     failure : function(response) { 
     } 
    } 
); 

[/編輯]

+0

,我們不應該使用POST方法是吧? – Annie 2013-04-15 04:26:48

+0

如果我發送查詢字符串作爲陣列它傳遞爲[「安妮」,「玫瑰」],但如果轉換爲字符串它傳遞爲安妮,玫瑰這是正確的? – Annie 2013-04-15 05:21:28

+0

查看我的回答,我添加了示例代碼以顯示POST請求 – ThinkFloyd 2013-04-15 05:53:52

相關問題