jquery - Phonegap,jQuery ajax 帖子不起作用

标签 jquery ajax post file-upload cordova

我有以下客户端代码来从手机上传图像

$("#placeorder").click(
 function() {
  if ($('#placeorderform').valid()) {
   var formData = $('#placeorderform').serialize();
   formData += "&uploaded="+ imgData;
   $.ajax({
    type : "POST",
    url : _host+ "/addorder.php",
    data : formData,
    dataType : 'jsonp',
    success : onSuccess,
    error : onError
    });
  }
 });

服务器端 PHP(不工作)

$encodedData = str_replace(' ','+',$_POST['uploaded']);

服务器端 PHP($_REQUEST 或 $_GET 有效;但适用于小图像)

$encodedData = str_replace(' ','+',$_REQUEST['uploaded']);

我的客户端代码有什么问题。

其他观察结果:

我尝试检查请求 header ,发现了令人惊讶的结果。当我在浏览器中执行上述 ajax 操作时,数据会在 POST 中收到。但从 Phonegap 内部,即使明确提及类型:“POST”,数据也会以 GET 形式接收。

有人可以解释一下这些行为吗:(我的 Phonegap 配置有问题吗?

最佳答案

所以我得到了这个工作...令人惊讶的发现!!!

当我将 dataType: 'jsonp' 更改为 ('json' 或 'text') 时,表单数据将在 $_POST 中通过。

仅当 dataType: 'jsonp' 时,由于某些未知原因,表单数据会通过 $_GET 或 $_REQUEST

不知道为什么会发生这种情况;但现在我的问题已经通过“json”解决了。

关于jquery - Phonegap,jQuery ajax 帖子不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10784479/

相关文章:

javascript - 通过ajax formdata发布文件

post - 带有 POST 请求的 Yii 2 中的 Pjax

curl -T 的 Java 替代方案

javascript - IE8 中未知的 JS 错误

ajax - 查看ajax、flash http请求的响应内容

javascript - 在后台运行 requestAnimationFrame

asp.net-mvc - ASP MVC + AJAX,尝试异步更新 div

javascript - ajax 论坛上的无状态(pushState?)后退按钮

javascript - 使用 Firestore 无限滚动

javascript - Twitter 对 css outline 使用了什么样的技巧?