![](/img/trans.png)
[英]How to post JSON request from javascript to Django and receive an JSON answer?
[英]how to post a json from javascript?
我想從使用javascript的html網頁發送json字符串到WCF ..是否有任何好的教程?
這是我正在使用的代碼
<head>
<title>Test</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript" src="http://www.json.org/json2.js"></script>
<script type="text/javascript">
$(function() {
JSONStringer json = new JSONStringer()
.object()
.key("cno").value("2000")
.key("cname").value("HI")
.key("cmail").value("HI")
.key("cphno").value("9292")
.key("cmailtype").value("Home")
.key("cphnotype").value("Office")
.key("clientno").value("1")
.endObject();
var dat = JSON.stringify(json.serializeArray());
alert("I am about to POST this:\n\n" + dat);
$.post(
frm.attr("action"),
dat,
function(data) {
alert("Response: " + data);
}
);
});
</script>
</head>
讓我知道我必須將它發布到特定服務...就像指定URL一樣
我認為您正在將Java與JavaScript混為一談。 盡管它們的名字不存在任何關系。 據我所知, JSONStringer
在javascript和jquery中都不存在。 JSON代表JavaScript Object Notation(JavaScript對象表示法),這意味着它對於javscript語言非常原生(有一些細微的差別)。 由於它是如此接近,因此很容易在javascript中解析Json。
此外,javascript是一種動態類型語言,因此提供類型通常會導致解析錯誤。 如果您的代碼無效,請使用firebug或Chrome控制台。 當瀏覽器無法解析您的代碼時,您將看到一個錯誤。
用於您可能要使用的序列化(在支持JSON和/或json2.js的瀏覽器中)
var dat = JSON.stringify({
cno: 2000,
cname: 'HI',
cmail: 'HI',
cphno: '9292',
cmailtype: 'home',
cphnotype: 'Office',
clientno: 1
});
該URL進入您放置frm.attr("action")
。 我沒有看到你在哪里創建frm
對象。 我不認為你需要一個JQuery對象,所有主流瀏覽器都支持document.getElementById
,我敢打賭它也更快。
var myForm = document.getElementById('myformid');
$.post(
myForm.action,
dat,
function(data) {
alert('Response: ' + data);
}
);
據我所知,postdata必須采用查詢參數格式,所以你可能需要輸入類似的東西
'myData=' + dat,
從網絡上復制/粘貼代碼可以快速開始工作,但是許多javascript程序員忘記了您必須首先了解該語言。 不要盲目地復制代碼,試着了解會發生什么。 首先嘗試在沒有庫的情況下解決問題,然后發現實際需要的庫。
http://www.learn-ajax-tutorial.com/PassingData.cfm#JSON
這幾乎就是您所需要的,不確定WCF方面,但是如果它是適當的Web服務,那么您所需要的就是描述符,以找出函數名稱及其參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.