2015-05-20 3 views
0

Здравствуйте, я получил услугу, предназначенные для отправки HTML писем, она будет вызываться из метода «SendMail (данные) около 1500 символов.asp.net

я получить доступ к службе хотя JQuery с AJAX вызова и JSON:

 var data = encodeURIComponent(JSON.stringify(dataArray)); 

        $.ajax({ 
         type: "GET", 
         url: "http://localhost:53334/Service.svc/SendMail?data=" + data, 
         contentType: 'application/json; charset=utf-8', 
         dataType: "json", 
         success: function() { 
          alert("Reklamationen er blevet sendt!"); 
         }, 
         error: function (err) { 
          alert("Kunne ikke sende reklamation! Der opstod en fejl."); 
         } 
        }); 

Я получил много полей, и если я заполнить все из это дает 404 не нашли ответ, но затем, если я оставляю некоторые случайные поля пустыми он попадает в API и выполняет метод, он должен? Поэтому я думаю, что это касается размера данных. Я пробовал много настроек в webconfig, но мне не удалось найти решение.

Я надеюсь, что кто-то может мне помочь.

+0

Вы вводите свой 'type' в' ajax' как ** GET **, это не должно быть ** POST **, поскольку вы не получаете никаких данных. – Tikkes

+0

Хм, я всегда использую get, поскольку, насколько я помню, я не могу заставить пост работать с сервисом. Но, возможно, я должен попробовать сделать пост вместо этого. :) – martin

ответ

1

Вы действительно должны использовать POST, как указано Tikkes. Семантически вы не запрашиваете ресурс с сервера, поэтому GET не имеет смысла. Кроме того, как отмечено here, максимальная длина, которая применяется для Urls, используется GET для передачи параметров (как вы можете видеть и в своем коде). POST, с другой стороны, использует тело запроса для отправки своих данных. Кроме того, как указано here Размеры POST и GET обычно настраиваются на сервере, но POST обычно намного больше (по умолчанию 2 КБ или 10 МБ), как указано в одном из ответов. Надеюсь это поможет.

 Смежные вопросы

  • Нет связанных вопросов^_^