JSON вызывает не работать после переключения типа на POST вместо GET - PullRequest
0 голосов
/ 05 ноября 2011

Я использую фреймворк JayRock с ASP.NET, чтобы вернуть JSON, потребляемый через javascript. Все работало нормально, пока я не изменил вызов $ .ajax с GET на POST. После этого изменения я получаю эту ошибку.

{"id":null,"error":{"name":"JSONRPCError","message":"Missing value.","errors":[{"name":"JsonException","message":"Missing value."}]}}

Вот мой JavaScript:

    var tmp = '{ "assID": 52 }';
    var tmpObj = $.parseJSON(tmp);


$.ajax
({
    type: "POST",
    url: '/jsonC.ashx/tester',
    dataType: 'json',
    data: tmpObj,
    async: true,
    contentType: 'application/json',
   success: function (result) {
        console.log(JSON.stringify(result));
    }
})

У кого-нибудь есть идеи? Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 05 ноября 2011

Вот определение того, что следует делать:

var dataString = '{ "assID": 52 }'; 
var postData = $.parseJSON(dataString);
var response;
$.ajax({
  type: 'POST',
  url: '/jsonC.ashx/tester',
  contentType: 'application/json',
  data: JSON.stringify(postData),
  dataType: 'json',
  success: function(data) {
      //do something for success if you want. If your response is JSON:
      response = $.parseJSON(data)
  },
  error: function(data) {
      //do somtething for error if you want. If your response is JSON:
      response = $.parseJSON(data)
  }
});
0 голосов
/ 05 ноября 2011

Вам необходимо добавить свои параметры в качестве данных в значениях конфигурации ...

$.ajax
({
    type: "POST",
    url: '/jsonC.ashx/tester',
    dataType: 'json',
    data: {id: some_value, other_var: 'some string'}
    async: true,
    contentType: 'application/json',
   success: function (result) {
        console.log(JSON.stringify(result));
    }
})

просто замените содержимое данных вашими фактическими значениями. В настоящее время вы публикуете на странице, но не отправляете сообщения.

...