javascript content-type详解
javascript content-type详解
1 application/x-www-form-urlencoded
这个类型就是jquery ajax content-type 默认的设置 PHP POST可以接受
2 contentType : “application/json
PHP接受如下
$string = file_get_contents("php://input"); // $string=urldecode($string); parse_str($string, $res); //第一个参数为字符串,第二个参数为结果 // var_dump($res); // $file_in=json_decode($file_in,\'true\'); print_r($res); exit();
3 multipart/form-data
下面直接贴ajax的代码
<!DOCTYPE html> <html> <head> <title></title> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0"> </head> <body> <div id="app"> <form id="addForm" action="/home/moban/testformdata" method="POST" enctype="multipart/form-data"> <p>username: <input type="text" name="fname" /></p> <p>age: <input type="file" name="age" /></p> <div id="submitAdd">提交 </div> </form> </div> <script src="/moban/js/jquery.min.js"></script> <script type="text/javascript"> $(function() { $("#submitAdd").click(function() { var targetUrl = $("#addForm").attr("action"); var data = new FormData($("#addForm")[0]); $.ajax({ type: \'post\', url: targetUrl, cache: false, //上传文件不需缓存 processData: false, //需设置为false。因为data值是FormData对象,不需要对数据做处理 contentType: false, //需设置为false。因为是FormData对象,且已经声明了属性enctype="multipart/form-data" data: data, dataType: \'json\', success: function(data) { alert(\'success\'); }, error: function() { alert("请求失败") } }) }) }) </script> </body> </html>