0
我希望在发送请求之前为我的httpclient对象拥有多个自定义请求标头条目。我想发送请求应该是这样的:使用HttpClient的多个自定义请求标头条目
Request Headers
Connection:keep-alive
Content-Length:213
Content-Type:application/json
Host:portal.idtbeyond.com
Origin:https://portal.idtbeyond.com
Referer:https://portal.idtbeyond.com/activedocs
x-idt-beyond-app-id:xxccccxx
x-idt-beyond-app-key:yyuuuttttddfdfdfdfdfd
X-Requested-With:XMLHttpRequest
Request Payload
view parsed
{
"country_code": "SV",
"carrier_code": "Claro",
"mobile_number": "50363751234",
"plan": "Sandbox",
"amount": "500",
"client_transaction_id": "",
"terminal_id": "KIOSK 1",
"origin_country": "US"
}
我写在C#中的代码是如下:
using (var client = new HttpClient())
{
client.BaseAddress = new Uri(_ProviderService.GatewayUrl);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("x-idt-beyond-app-id",
_PayingMerchant.Username);
client.DefaultRequestHeaders.Add("x-idt-beyond-app-key",
_PayingMerchant.Password);
var urlSuffix = GetUrlSuffix(trans);
HttpResponseMessage response = client.GetAsync(urlSuffix).Result;
if (response.IsSuccessStatusCode)
{
TopUpResponse topUpResponse =
response.Content.ReadAsAsync<TopUpResponse>().Result;
if (topUpResponse.success)
{
result.Success = true;
result.ReturnValue = true;
}
}
}
我得到一个404响应和调试表明,头节对我来说错了。我对这些请求不熟悉,并希望得到任何帮助。
问候
404通常表明你正在试图通过向不特定服务存在;如果它是一个头的问题,通常会返回一个400错误的请求或替代错误...您确定404因为头返回吗? –
感谢您的回复,我遇到的问题是多个标题,当我查看我的网络时 - X-idt params被附加到标题的接受部分。注释掉两个x-idt参数将返回来自网关的未经授权的响应。我已验证网关网址及其正确 – Dzidzai