2016-02-06 6 views
0

я отправить данные с моей точки зрения на контроллерJQuery Ajax CONTENTTYPE

$.ajax({ 
     type: "POST", 
     url: "/registerAgency", 
     data: JSON.stringify(data), 
     contentType: "application/json; charset=utf-8", 
     success: function(responseData, textStatus, jqXHR) { 
      alert("data saved") 
     }, 
     error: function(jqXHR, textStatus, errorThrown) { 
      alert("error"); 
     } 
    }) 

}); 

И я не понимаю, почему мой запрос не использует тип содержимого приложения/JSON но использовать применение/х-www- форм-urlencoded

есть такие вопросы на этом форуме, но я действительно не какие-либо идеи, как решить такую ​​ситуацию

+0

Тестирование ваш точный код в jsFiddle отлично работает, заголовок запроса получает правильный заголовок CONTENTTYPE – adeneo

+0

Что вы пытаетесь использовать JSON.s tringify()? Можете ли вы показать нам параметры образца, которые должны быть сжаты? – rma

+0

вместо данных попробовать этот DATATYPE: 'JSON' – FaF

ответ

0

Я и немного любопытные по этому вопросу, Обычно я не использую contentType: 'application/json'. Способ, которым он обрабатывается, сильно отличается от использования $ _POST, $ _GET или $ _REQUEST. Конечно, это json тип контента.

JQuery

var data = { "agencyName":"sadf", "description":"asdf", "phoneNumber":"1111111111121", "webSite":"", "address":{ "country":"asdfasdf", "region":"asdf", "postalCode":"23423", "locality":"asdfasdf", "additionalInfo":"asdfasd" } }; 

$.ajax({ 
    type: "POST", 
    url: ".../registerAgency.php", 
    data: JSON.stringify(data), 
    contentType: 'application/json; charset=utf-8', 
    success: function(responseData, textStatus, jqXHR) { 
     alert(responseData); 
    }, 
    error: function(jqXHR, textStatus, errorThrown) { 
     alert("error"); 
    } 
}); 

PHP/сервер

<?php 
    // parameters are not accessible via POST, GET, nor REQUEST 
    $res = json_decode(file_get_contents('php://input')); 
    var_dump($res); 
?> 

Ссылка: Ajax call with contentType: 'application/json' not working