我有以下要求:
var response = $.ajax({
type: "POST",
contentType: "application/x-www-form-urlencoded",
url: this.AgentServiceUrl + "/" + methodName,
data: data,
async: this.Async,
success: function (xml, textStatus) { if (successHandler != null) successHandler(state, $.xml2json(xml), textStatus); },
error: function (xmlHttpRequest, textStatus, errorThrown) { if (errorHandler != null) errorHandler(state, xmlHttpRequest, textStatus, errorThrown); }
});
我尝试了很多方法,但无法在C#上使用它:
>
beforeSend: function (req)
{
req.setRequestHeader("AgentGUID", this.AgentGUID);
},
>传递参数:
你能帮助我吗?我不想更改C#部分的功能,我只想使用类似以下内容的东西:
(System.Web.HttpContext.Current.Request.Headers["someHeader"]
解决方法:
您的beforeSend应该可以按您希望的那样工作,但是未在服务器端获取值的原因是未定义此方法调用上的this.AgentGUID,因为在该上下文中此对象指向另一个对象(很可能是ajax请求对象).
var me = this;
var response = $.ajax({
...
beforeSend: function (req)
{
req.setRequestHeader("AgentGUID", me.AgentGUID);
},
...
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。