C# 如何在WebAPI单元测试中传递头值
在API控制器中,它获取HttpContextRequest头以获取访问令牌。当我使用UnitTest时,我将如何将访问令牌值传递给控制器操作。请帮忙C# 如何在WebAPI单元测试中传递头值,c#,unit-testing,asp.net-web-api,http-headers,C#,Unit Testing,Asp.net Web Api,Http Headers,在API控制器中,它获取HttpContextRequest头以获取访问令牌。当我使用UnitTest时,我将如何将访问令牌值传递给控制器操作。请帮忙 var _access_token = HttpContext.Current.Request.Headers["access_token"]; 你可以这样写 //Arrange var client = new HttpClient { BaseAddress = new Uri("http://localhost:55442/")
var _access_token = HttpContext.Current.Request.Headers["access_token"];
你可以这样写
//Arrange
var client = new HttpClient { BaseAddress = new Uri("http://localhost:55442/")
};
client.DefaultRequestHeaders.Add("access_token", "YWtoaWw6YWtoaWw=");
Employee emp = new Employee {
Id=1,
name = "Test Name",
salary = "2000"
};
//Act
var _response =
client.PostAsJsonAsync(client.BaseAddress +"/"+ "myController"+ "/"+
"methodName",emp).Result;
//Assert
Assert.IsTrue(true);
干杯…你可以这样写
//Arrange
var client = new HttpClient { BaseAddress = new Uri("http://localhost:55442/")
};
client.DefaultRequestHeaders.Add("access_token", "YWtoaWw6YWtoaWw=");
Employee emp = new Employee {
Id=1,
name = "Test Name",
salary = "2000"
};
//Act
var _response =
client.PostAsJsonAsync(client.BaseAddress +"/"+ "myController"+ "/"+
"methodName",emp).Result;
//Assert
Assert.IsTrue(true);
干杯…使用“授权”http标头。请参阅,提供可用于重现问题和所需行为的方法。您没有提供足够的信息,我们无法有效地帮助您。此外,您的web api代码似乎与
HttpContext
紧密耦合,这将使单独进行单元测试变得非常困难。请使用“Authorization”http标头。请参阅,提供可用于重现问题和所需行为的方法。您没有提供足够的信息,我们无法有效地帮助您。另外,您的web api代码似乎与HttpContext
紧密耦合,这使得隔离进行单元测试非常困难。