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;
}
C# http请求带请求头部分的更多相关文章
- 使用js+Ajax请求API接口数据-带请求头方式
C# http请求带请求头部分 先上代码: <script type="text/javascript"> function zLoginCheck() { var A ...
- axios中为所有请求带上Token头
axios中为所有请求带上Token头 https://www.imooc.com/article/27751
- 通过 Spring RestTemplate 调用带请求体的 Delete 方法(Delete With Request Body)
Spring 框架的RestTemplate 类定义了一些我们在通过 java 代码调用 Rest 服务时经常需要用到的方法,使得我们通过 java 调用 rest 服务时更加方便.简单.但是 Res ...
- HTTP请求与请求头
HTTP 的请求报文分为三个部分 请求行.请求头和请求体,格式如图:一个典型的请求消息头域,如下所示: POST/GET http://download.microtool.de:80/somedat ...
- 原创:【ajax | axios跨域简单请求+复杂请求】自定义header头Token请求Laravel5后台【亲测可用】
如标题:我想在ajax的header头增加自定义Token进行跨域api认证并调用,api使用laravel5编写,如何实现? 首先,了解下CORS简单请求和复杂请求. -- CORS简单请求 -- ...
- [转]HTTP请求模型和头信息
原文链接:http://www.java3z.com/cwbwebhome/article/article2/2406.html 目录 一.连接至Web服务器 二.发送HTTP请求 三.服务端接受请求 ...
- ajax请求,请求头是provisional are shown。请求未发送出去
问题: ajax请求,请求没成功.ajax请求没有发送出去. 查看network,看到请求头处:Provisional headers are shown. 原因: 搜索了一下,网上说了几个原因. 1 ...
- [转]HTTP请求模型和头信息参考
[转]HTTP请求模型和头信息参考 参考: http://blog.csdn.net/baggio785/archive/2006/04/13/661410.aspx模型: http://blog.c ...
- [面试没答上的问题1]http请求,请求头和响应头都有什么信息?
最近在找工作,面试官问了一些问题自己并没有回答上,这里做一个小结. http请求,请求头和响应头都有什么信息? 页面和服务器交互最常见的方式就是ajax,ajax简单来说是浏览器发送请求到服务端,然后 ...
随机推荐
- com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for class cn.edu.
详细信息 https://www.cnblogs.com/xuwenjin/p/8832522.html 解决办法: 在实体类上面加上注解 @JsonIgnoreProperties(value ...
- Ubuntu18.04安装mysql5.7
Ubuntu18.04安装mysql5.7 1.1安装 首先执行下面三条命令: # 安装mysql服务 sudo apt-get install mysql-server # 安装客户端 sudo a ...
- Service Account和RBAC授权
一.介绍 Service Account概念的引入是基于这样的使用场景:运行在pod里的进程需要调用Kubernetes API以及非Kubernetes API的其它服务.Service Accou ...
- SQL约束(主键约束、外键约束、自动递增、不允许空值、值唯一、值默认、值限制范围)
NOT NULL 不允许空值约束 NOT NULL 约束强制列不接受 NULL 值(NULL值就是没有值或缺值).NOT NULL 约束强制字段始终包含值,即不向字段添加值,就无法插入新记录或者更新记 ...
- 三、Docker网络
一.查看8001端口是否开启处监听状态 netstat -apnl | grep 8001 二.使用brctl show可以看到虚拟机的网络关系 brctl show docker每新建一个conta ...
- ES 6 系列 - Module 的语法
es 6 大幅度优化了模块化编程的规范. 写在前面:在 es6 之前,说起 js 的模块化,一般都避不开 CommonJs 和 AMD 两种方案.这两种方案,前者应用于服务器,后者应用于浏览器.而 e ...
- Docker 部署应用、jar 工程 docker 方式部署
https://blog.csdn.net/jiangyu1013/article/details/81988342
- 学习 Spring (四) Bean 的生命周期
Spring入门篇 学习笔记 定义 --> 初始化 --> 使用 --> 销毁 初始化 实现 org.springframework.beans.factory.Initializi ...
- Nginx 如何减轻高流量下的压力
L:102 比如 Nginx 缓存服务出现问题(比如新增服务器等造成缓存失效) 所有资源请求直接穿透上游服务器 造成上游服务器压力倍增 特别热点文件 都是访问同个文件 以下可以减轻上述问题 第二种方 ...
- linux-shell系列5-统计
#!/bin/bashshow=$(service --status-all 2>/dev/null | grep -E "is running|正在运行"|awk '{pr ...