似乎@service.xml
中的@service.xml
def concat(a, b):
return a + b
装饰器已被破坏。
>>> from urllib import urlopen
>>> r = urlopen("http://127.0.0.1:8000/webservice/default/call/xml/concat/hello/
world")
>>> r.read()
'<?xml version="1.0" encoding="UTF-8"?>helloworld'
结果是:
@service.json
def concat(a, b):
return a + b
缺少产生无效XML的最后一部分。
但是,JSON和CSV运行良好。
>>> r = urlopen("http://127.0.0.1:8000/webservice/default/call/json/concat/hello
/world")
>>> r.read()
'"helloworld"'
测试:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
$( "#button_toggle_XRT").click(function() {
$( "#XRT_overview").slideToggle(1000);
});
});
</script>
我正在脚手架应用程序的副本中测试它。我错过了什么,或者这确实是一个问题?
答案 0 :(得分:1)
我认为这只是本书中的一个不好的例子。要生成有效的XML,该函数应返回列表或字典(或具有.as_list
,.as_dict
或.custom_xml
方法的对象。例如:
@service.xml
def concat(a, b):
return dict(result=a + b)
产生
<?xml version="1.0" encoding="UTF-8"?>
<document>
<result>helloworld</result>
</document>