ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

C# asp.net GET POST添加请求头 以及 POST带参数请求 页面间传值 清空Session Cookie

2021-04-09 21:30:26  阅读:190  来源: 互联网

标签:asp 请求 GET req Token Session POST string


7.C# ASP.NET GET POST添加请求头 以及 POST带参数请求

这里接接口时未进行封装,记录时才临时做了一下,所以可能某些声明不太对。如果有问题自己看着微调下就好,不行就问。

(1)GET添加请求头Token

//根据接收的参数先创建个类
public class getSchoolData
{
	public string OrganizeId { get; set; }
}

public string HttpGet (string url)		
{
	string result = string.Empty;
	HttpWebRequest reqS = (HttpWebRequest)WebRequest.Create(Url);
    reqS.Method = "GET";

 	//添加请求头
	reqS.Headers.Add("Authorization", "Bearer " + accessToken);
	reqS.ContentType = "application/json; charset=utf-8";

    HttpWebResponse resS = (HttpWebResponse)reqS.GetResponse();
	Stream myResponseStream = resS.GetResponseStream();
    StreamReader streamReader = new StreamReader(myResponseStream);
    result = streamReader.ReadToEnd();
    streamReader.Close();
    myResponseStream.Close();

	//Response.Write(result.ToString()); 这里可以看看返回的数据啦~

	 // 解析返回的json数据(使用 jobject)
	JObject theResult = (JObject)JsonConvert.DeserializeObject(result);

	// 根据JSON结构自己修改{}里的key值
	string finalResult = theResult["{Data}"].ToString();

	// 此处需自己根据返回数据设置类去接收 json转实体
	List<getSchoolData> listS = JsonConvert.DeserializeObject<List<getSchoolData>>(finalResult);

	 // 得到返回的数据结果
	foreach (getSchoolData s in listS) 
	{ 
		Response.Write("这里的{s}就是每一条得到的数据啦") 
	}
 }

(2).POST带参数 请求(传入字符串)

public string HttpPost(string url, string content)
{
        string getAccessToken = "";
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
        req.Method = "POST";
        req.ContentType = "application/x-www-form-urlencoded";

        //#region 添加Post 参数
        byte[] data = Encoding.UTF8.GetBytes(content);
        req.ContentLength = data.Length;
        using (Stream reqStream = req.GetRequestStream())
        {
            reqStream.Write(data, 0, data.Length);
            reqStream.Close();
        }
        //#endregion

        HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
        Stream stream = resp.GetResponseStream();
        //获取响应内容
        using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
        {
            getAccessToken = reader.ReadToEnd();
            reader.Close();
        }
        JObject getToken = (JObject)JsonConvert.DeserializeObject(getAccessToken);

        // 同样根据接口规则去取得返回Token
        string getTheToken = getToken["{access_token}"].ToString();
        // 后续操作参上GET
}

8. aspx.cs页面间传值

A.aspx.cs内代码

{
  Session["Access_Token"] = getTheToken;
}

B.aspx.cs内代码

{
	 if (Session["Access_Token"] != null) 
	 {
     	string token = Session["Access_Token"];
	 }
}

9.清除cookie和session

for (int i = 0; i < Response.Cookies.Count; i++)
{
	Response.Cookies[i].Expires = DateTime.Now.AddDays(-1);
}
Session.Clear();
Session.Abandon();

标签:asp,请求,GET,req,Token,Session,POST,string
来源: https://blog.csdn.net/qq_46274532/article/details/115559674

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有