2016-03-06 46 views
1

在我的CoffeeScript前端我嘗試的值列表傳遞給後端

data = { 
    id: [2, 3, 4] 
} 

$.post url, data 

在處理程序在谷歌應用程序引擎(Python)的後端,我看像這樣的值:

id_value = self.request.get('id') 

    LOG.info("%s", id_value) 

它總是隻打印出'2'。

我怎樣才能得到後端獲得列表[2,3,4]

回答

0

$.post默認情況下以url編碼格式發送數據,它以自己的方式處理嵌套結構。

您可能需要先在JSON中對數據進行編碼,然後在服務器端對其進行解碼,例如here

0

請求對象提供了一個get()方法,該方法返回從查詢和POST數據解析的參數的值。

如果參數出現在請求不止一次,默認的get()返回 第一次出現。爲了得到一個說法 出現的所有可能出現一次以上的列表(可能爲空),給 get()方法的參數allow_multiple =真。

因此,您應該使用類似下面的代碼片段。你可以找到更多的細節here

id_value = self.request.get('id', allow_multiple=True) 

如果您需要訪問的變量在請求主體URL編碼,你應該使用這樣的事情(通常是POST形式使用應用程序/ x-WWW窗體-urlencoded媒體類型提交)。

id_value = self.request.POST.getall('id') 
相關問題