jquery ajax json rpc如何在服务器上检索数据
Posted
技术标签:
【中文标题】jquery ajax json rpc如何在服务器上检索数据【英文标题】:jquery ajax json rpc how to retrieve data on server 【发布时间】:2013-10-02 11:36:04 【问题描述】:我对如何从 jquery/ajax/json rpc 调用检索我的数据服务器端感到头疼!
这里是客户端:
$.ajax(
type: 'POST',
contentType: 'application/json; charset=utf-8',
url: 'http://wine-trip.net/php/ajax/setVinImage.php',
data: JSON.stringify(jsonrpc:'2.0',method:'add',params:['vigneronID':'14818','action':'deleteImage','vinID':'13','vinImageType':'Bouteille'],id:"jsonrpc"),
dataType:"json",
success:function(data)
if (typeof (data.error.message) === 'undefined')
// Everything was OK
else
alert(data.error.message);
,
error: function(req)
alert("Networking problem");
);
这是服务器端的开始:
// HTTP headers for no cache etc
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
error_log("POST ".$_POST['vigneronID'], 0);
error_log("REQUEST ".$_REQUEST['vigneronID'], 0);
我从显示在警报中的服务器获得答案,但无法访问我通过参数传递的数据(语法错误?)。
我可以进行正常的 ajax 调用,但由于我使用的是 plupload 库(与 json rpc 一起使用),我想弄清楚为什么我不能使用这种方法!
我尝试过使用或不使用 contentType,但似乎没有任何改变......
【问题讨论】:
【参考方案1】:我猜测 error_log 会发出一些字符串?它有助于使用 json_encode http://php.net/manual/en/function.json-encode.php。我还建议使用开发人员工具,例如 firebug for firefox,您可以查看服务器发送的内容
【讨论】:
以上是关于jquery ajax json rpc如何在服务器上检索数据的主要内容,如果未能解决你的问题,请参考以下文章
Trac JSON RPC 问题 - 将 jQuery AJAX 与 PHP 代理一起使用
使用数据库 codeigniter 的 JSON RPC 服务
如何使用 jquery ajax 正确地将 json 对象传递给烧瓶服务器