Asp.net API服务.SVC查询长度问题



你好,我得到了一个用于发送html邮件的服务,它将从方法SendMail(data)中调用大约1500个字符。

我通过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中尝试了许多设置,但我还没有找到解决方案。

我希望有人能帮助我。

您应该像Tikkes那样使用POST。从语义上讲,您没有从服务器请求资源,因此GET没有意义。此外,正如这里所指出的,url有一个强制的最大长度,GET使用它来传递参数(正如您在代码中看到的那样)。另一方面,POST使用请求体发送其数据。另外,正如这里提到的,POST和GET的大小通常在服务器上是可配置的,但是POST通常要大得多(2KB vs 10MB默认值),正如其中一个答案所述。

最新更新