我尝试将dojox.data.JsonRestStore与我的RESTful服务一起使用。我通过sitepen和dojox文档阅读了这些文章,但我无法理解它们的全部内容。
我的服务收到http://<host>/rest/relatedsuggestion?query=weath&results=3
之类的请求并返回JSON
{
Suggestions: [
“weather channel”,
“weather forecast”,
“weather bbc”
]
}
这意味着它无法理解每个教程中使用的http://<host>/rest/relatedsuggestion/3
之类的请求。我怎样才能理解我的格式?据我所知,答案在这堂课上也很不寻常。
为了尝试JsonRestStore,我编写了以下模拟页面,cource它不起作用并返回4个错误“类型错误:_57为空”:
<head>
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojo/dojo.xd.js"
djConfig="parseOnLoad: true">
</script>
<script type="text/javascript">
dojo.require("dojox.data.JsonRestStore");
dojo.require("dojox.grid.DataGrid");
dojo.addOnLoad(function() {
var poStore = new dojox.data.JsonRestStore({target:"http://<host>/rest/features/relatedsuggestion"});
poStore.fetchItemByIdentity({
identity:"3433",
onItem:function(poItem){
poItem.completeOrder();
}
});
});
</script>
<link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dijit/themes/claro/claro.css"
/>
</head>
<body class=" claro ">
<div id="gridElement"></div>
</body>
答案 0 :(得分:0)
这篇IBM developerWorks文章可能会有所帮助:Use Dojo's JsonRestStore with your REST services。
根据您的说明,您的服务是非标准的,因此您需要调整网址和响应修改以适应JsonRestStore
期望的内容。该文章解释了如何通过实施自己的服务来实现这一目标。