在POST Payload中返回GET内容

时间:2013-05-22 16:03:40

标签: php javascript ajax

我正在通过Ajax调用及其post变量(数据)进行POST 。 一切顺利,直到我在Request Payload中注意到正在使用GET语句,就像明确地调用GET一样,我不知道为什么会发生这种情况,因为在我的API结构中

我很满意:

if (isset( $_SERVER['REQUEST_METHOD']) && ( strtolower($_SERVER['REQUEST_METHOD']) === strtolower($handler_method)) ) {
    //do task
}

这里处理程序方法是处理任务的方法集 有什么想法吗?

注意:ajax调用是通过Backbone进行的,因为如果我在JQuery Ajax中执行此操作,它可以正常工作而不需要任何GET内容。

注意:正如我所提到的,GET内容正在请求有效负载内部,JSON结果正常:  {data:null,report:“NO_PARAMS_WRONG_DATA_TYPE”,成功:false}

2 个答案:

答案 0 :(得分:1)

$ _ REQUEST包含$ _GET,$ _POST和$ _COOKIES的所有变量。如果你只想要$ _POST,那么使用$ _POST。

答案 1 :(得分:1)

在执行ajax调用时,很可能缺少设置请求类型。 查看here设置 - >类型:

  

键入(默认:'GET')

     

要求的类型(“POST”或“GET”),默认为“GET”。

所以,你应该这样做:

$.ajax({
   ...
   type:'POST',
    ...
})

为了强制jquery发送POST请求

  

我正在通过Ajax调用及其变量(数据)进行POST

只需使用data即可获得POST请求,因为data用于GET和POST请求。只是以不同的方式编码。

相关问题