在asp.net MVC中设置Integer标头值



我想为terminalId设置一个Int Header值。

当前HttpClient标头只占用<字符串,字符串>成对。如何添加带有<字符串,int>?

此Web服务接受terminalId的Int。

以下代码:

using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://localhost:8678");
var postview = new CitizenResult
{
cpartyUsername = "abc",
cpartyPassword = "123",
};
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Add("token", "d448f575db31a44e32e0a17f24bc947cdd4edb4a7db8729734c81b9e139286af36dd9c5e42793d494e0f7bd45b25e5f3b77472949f38bcdb3dfa2b8d1ef376848ec6ce65b9a7d7be343c5c1b59089082");
client.DefaultRequestHeaders.Add("clientIPAddress", "178.173.147.4");
client.DefaultRequestHeaders.Add("clientAgentInfo", "192.168.0.227");
client.DefaultRequestHeaders.Add("terminalId", 123);
int a = 190766;
var postTask = client.PostAsJsonAsync<CitizenResult>("http://test", postview);
postTask.Wait();
var result = postTask.Result;
if (result.IsSuccessStatusCode)
{
var x = result.Content.ReadAsAsync<SalamtResultViewModel>();
ViewBag.x = x;
}
else
{
var x = result.Content.ReadAsAsync<badRequestResult>();
ViewBag.x = x;
}
}

添加整数时,只需调用.toString((方法。

client.DefaultRequestHeaders.Add("terminalId", 123.toString());   

client.DefaultRequestHeaders.Add("terminalId", a.toString());

这是因为标头可以被认为只是一个JSON对象,其中所有内容都存储在引号中,如下所示:

{
"key":  "value"
}

所以你的条目会像这个一样存储

"terminalId": "123"

JSON可以保存以下信息:

"terminalId": 123

但没有可供使用的过载。

最新更新