C# http请求带请求头部分
前台调用:
<script type="text/javascript"> function zLoginCheck() { var Account = 'admin; var Password = 'DC483E80A7A0BD9EF71D8CF973673924'; var str = { Account: Account, Password: Password } $.ajax({ type: "POST", url: '/Handle/zLogin.ashx', dataType: 'json', data: JSON.stringify(str),// beforeSend: function (request) { request.setRequestHeader("Method", "Login"); request.setRequestHeader("timespan", "1487586970772"); request.setRequestHeader("Nonce", "726757"); request.setRequestHeader("Token", "615d1c0ab53315a2"); request.setRequestHeader("Account", ""); request.setRequestHeader("Source", "2"); request.setRequestHeader("Version", "139"); request.setRequestHeader("Sign", "5329E35A3F60B7DFA147D20EF377888C"); request.setRequestHeader("Host", "wsmvip.aisidi.com"); request.setRequestHeader("Content - Length", "76"); }, success: function (data) { if (data.Code == "0000") { alert(JSON.stringify(data.Data)); alert("Token:" + data.Data.Token); } else { alert('登录失败:' + data.Message); } }, complete: function (XMLHttpRequest, textStatus) { this; // 调用本次AJAX请求时传递的options参数 } }); } </script>
后台部分:
/// <summary> /// 后台再请求别的接口的方法,体现了添加request header /// </summary> /// <returns></returns> public string Login(string RequestString, HttpContext context) { string url = https://xxx.xxxx.com/Services/Login.ashx; string json = ""; Encoding encoding = Encoding.UTF8; HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "post"; request.Headers.Add("Method", context.Request.Headers["Method"]); request.Headers.Add("timespan", context.Request.Headers["Timespan"]); request.Headers.Add("Nonce", context.Request.Headers["Nonce"]); request.Headers.Add("Token", context.Request.Headers["Token"]); request.Headers.Add("Account", System.Web.HttpUtility.UrlDecode(context.Request.Headers["Account"])); request.Headers.Add("Source", context.Request.Headers["Source"]); request.Headers.Add("Version", context.Request.Headers["Version"]); request.Headers.Add("Sign", context.Request.Headers["Sign"]); request.Accept = "text/html, application/xhtml+xml, */*"; request.ContentType = "application/x-www-form-urlencoded"; byte[] buffer = encoding.GetBytes(RequestString.ToString()); request.ContentLength = buffer.Length; request.GetRequestStream().Write(buffer, 0, buffer.Length); HttpWebResponse response = (HttpWebResponse)request.GetResponse(); using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8)) { json = reader.ReadToEnd(); } return json; }
如果您认为这篇文章还不错或者有所收获,您可以通过右边的“打赏”功能 打赏我一杯咖啡【物质支持】,也可以点击文章下方“推荐”按钮【精神支持】,您的“推荐”将是我最大的写作动力!
欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,凡是转载于本人的文章,不能设置打赏功能,如有特殊需求请与本人联系!
分类:
工作问题
标签:
http Header
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)