ajax type:post,node req.method显示的却是get?

在做node交互的小demo,用ajax做数据传输,使用的是type:'post',但是node代码调试中显示req.method:get。不知道是为什么?

html代码

  <div class="form">        
        <p class="form-p" style="color: #8d8d8d; text-align: center;">站内搜索</p>
        <input type="text" name="sousuo" id="search">
        <ul id="result">
    
        </ul>
    </div>

ajax代码

 $.ajax({
       url:"http://localhost:3000/",
       type:'post',
       dataType:'jsonp',
       data: {'data':search.value},
       jsonp : "callback", //传递给请求处理程序或页面的,用以获得jsonp回调函数名的参数名(一般默认为:callback)  
       jsonpCallback:"handler",          
       success:handler,
    });
    

node代码

var http = require('http');
var mongo = require('mongo');
  http.createServer(function (req, res){
     var data = "";  
   console.log('Request received: ');
   data = req.body.data;   

}).listen(3000,'127.0.0.1'); 

调试发现:
图片描述

阅读 2.1k
1 个回答

jsonp只能get。
因为其原理是用script标签获取,虽然jq把json放在ajax方法里面本来就是有点歧义,和xhr都没有什么关系了。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题