防止php $_REQUEST转换json

是否有人知道如何让PHP $_REQUEST自动转换JSON?我正在通过POST发送数据,并希望将其中的一些保留为原始形式,并将其存储为字符串.

理想情况下,我想要一些简单的方法来“逃避”一段字符串.似乎有一种简单的方法可以做到这一点,但我还没有看到过.

哇…请原谅我在措辞这个问题上缺乏准确性,我几天不停地编程并且累了.在我甚至无法解释误解之前,我没想到会急于关闭我的问题.

我的意思是我将javascript对象作为数据传递给jQuery的$.ajax()方法,并使用类型:“POST”进行调用.后来我意识到$.param()在内部用于将对象序列化为传输的查询字符串,并且$_REQUEST []将传递给这种方式的对象转换为数组结构,就像使用任何复杂的表单数据一样.

客户代码

$.ajax({ type: "POST", url: "some.PHP", data: {"obj":{"key":"val"},"str":"text"} })

解决方法:

当您执行jQuery AJAX请求时,数据中的键/值对将作为POST参数发送,而不是作为JSON发送.如果您希望将数据发布为JSON,那么您需要做的是类似于以下内容

<script type="text/javascript" src="https://raw.github.com/gist/754454/c6401b8cc461f84799503484a0c780a7622b164d/jQuery.stringify.js"><!-- JSON library --></script>

<script type="text/javascript">
  var data = JSON.stringify({"obj":{"key":"val"},"str":"text"}});
  $.ajax({'type':"POST", 'url':"some.PHP", 'data':{'data':data});
</script>

请注意,我们将您通常传递的内容作为“data”参数,但我们正在创建一个名为“data”的post参数,其值为数据结构的字符串化版本.也称为JSON.

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...