jquery - 需要帮助使用 jquery 将数据发布到 ASP.NET MVC 应用程序

标签 jquery asp.net tcptrace-pocketsoap

我有一个 MVC 应用程序,它接受取决于请求类型的 JSON 或 XML 对象。此应用程序基于this article

要调用 MVC 应用程序上需要复杂对象的方法,我使用以下 Javascript (JQuery):

function GetUnassignedJob() {
if (isInteger($('#txtDay').val()) && isInteger($('#txtMonth').val()) && isInteger($('#txtYear').val()) && isInteger(intCurrentJobSummaryIndex) && intCurrentJobSummaryIndex > -1) {
    $.ajax({
        type: 'POST',
        contentType: 'application/json; charset=utf-8',
        url: 'http://server/api/wip/joboptimise/getlistforids/' + $('#txtYear').val() + '/' + $('#txtMonth').val() + '/' + $('#txtDay').val(),
        data: $.toJSON(aJobSummary[intCurrentJobSummaryIndex].JobIds),
        dataType: 'json',
        cache: false,
        beforeSend: function(XMLHttpRequest) { ShowLoading(); },
        success: function(data, textStatus) {
            try {
                ClearUnassignedJobs();
                AddUnassignedJobs(data);
            }
            catch (e) {
                alert('GetUnassignedJob():\r\n\r\n' + e.message);
                HideLoading();
            }
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
            HideLoading();
            ShowStatus('unable to retrieve job list');
        },
        complete: function(XMLHttpRequest, textStatus) {
            HideLoading();
        }
    });
}
else {
    ShowStatus('please ensure you have entered numeric values for day, month and year');
}

}

当部署到服务器并从网络上的任何客户端访问时 - 一切正常。但是,当我尝试从服务器执行相同操作时,我收到以下错误消息:

页面位置:/api/wip/joboptimise/getlistforids/2010/3/10

消息:需要来自命名空间“”的元素“root”。遇到名称为“”、命名空间“”的“无”。

来源:System.ServiceModel.Web

方法:System.Object InternalReadObject(System.Runtime.Serialization.XmlReaderDelegator, Boolean)

堆栈跟踪:位于 System.Runtime.Serialization.Json.DataContractJsonSerializer.InternalReadObject(XmlReaderDelegator xmlReader, Boolean verifyObjectName) 在 System.Runtime.Serialization.XmlObjectSerializer.ReadObjectHandleExceptions(XmlReaderDelegator reader, bool verifyObjectName) 在 System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(XmlDictionaryReader 阅读器) 在 System.Runtime.Serialization.Json.DataContractJsonSerializer.ReadObject(流流) 在 rbm.api.ObjectFilter.ProcessJson(ActionExecutingContext filterContext)

进一步的调查显示 HttpContext 的 InputStream 属性为空!更奇怪的是,当我使用像 TcpTrace 这样的应用程序(以便我可以看到 HTTP 流量)时,一切正常!

任何帮助将不胜感激,

标记

最佳答案

前面的评论是正确的,使用本地主机。您可以编辑位于以下位置的主机文件: 在服务器上的 windows\system32\drivers\etc 并添加一个将本地主机映射到 URL 的条目

 127.0.0.1 www.xyz.com 

关于jquery - 需要帮助使用 jquery 将数据发布到 ASP.NET MVC 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2425032/

相关文章:

jQuery Datatables 分页字体大小

jQuery只读属性问题

javascript - jQuery 将十六进制转换为 rgba

c# - UriBuilder 无法对 UriBuilder 注册标志进行编码

http - 我如何使用 Fiddler 调试 HTTP session ,就像我使用 TcpTrace 一样?

来自 Web 服务调用的 XML

javascript - 在另一个 Javascript 文件中获取全局 Javascript 变量

html - 调用具有外国名称的文件 vb.net、c# 和 asp

c# - 在 JavaScript 中传递参数

c# - 什么时候可以不调用 Application_EndRequest?