使用mootools将curl查询转换为ajax查询

时间:2012-07-05 15:26:04

标签: ajax curl mootools nuxeo

我正在使用curl从nuxeo获取json数据,这是我的卷曲函数

curl -X POST -H "Content-Type:application/json+nxrequest" -d 
"{ params:
        {
            query:'SELECT * FROM Document'
        }
}" -u Administrator:Administrator http://localhost:8080/nuxeo/site/automation/Document.Query

这个函数运行正常,但现在(使用ajax版本)我有错误http 500.这是ajax版本的代码

function getData(){
        var uri = "http://localhost:8080/nuxeo/site/automation/Document.Query" ;
        var options = {  method : 'post', data : 'query=SELECT * FROM Document' };
        var myCall = new Ajax(uri,options);
        myCall.request();

   }

2 个答案:

答案 0 :(得分:0)

数据需要成为一个对象。虽然在mootools 1.12中不确定 - 你似乎正在使用它。

理论上:

new Ajax(uri, {
    method: 'post',
    data: {
        query: 'select * from Document'
    }
}).request();

http://jsfiddle.net/dimitar/z5QzL/

答案 1 :(得分:0)

要让Nuxeo工作,你需要在AJAX通话中确认这两件事(就像在你的卷曲通话中那样)。

  1. Content-Type:application/json+nxrequest设为标题。
  2. 传入完整的json作为数据{"params":{"query":"SELECT * from Document"}}
  3. 如果你没有做这些事情,你将得到500回报。

    查看Nuxeo(server.log)上的服务器日志可能会帮助您解释使用AJAX发送的确切内容,并帮助您调试问题。