远程服务器返回错误:(401)未经授权。

编程入门 行业动态 更新时间:2024-10-26 13:24:00
本文介绍了远程服务器返回错误:(401)未经授权。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我正在尝试将数据传递到Web API并通过json检索结果。我一直得到f.f.错误:远程服务器返回错误:(401)未经授权。 这是代码。 我尝试过的事情:

string authInfo = XXXXXXX + : + XXXXXXX; authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo)); HttpWebRequest request =(HttpWebRequest)WebRequest.Create( @ https:// elig。 nhia.gov.gh:5007/api/hp/authenticate/app); request.Method = POST; request.Accept = application / json; charset = utf-8; request.Headers [ 授权] = 基本 + authInfo; 使用( var streamWriter = new StreamWriter(request.GetRequestStream())) { string json = new JavaScriptSerializer()。Serialize( new { GhanaCardNo = , UMN = membershipNoTextBox.Text }); streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); } var response =(HttpWebResponse)request.GetResponse(); string strResponse = ; 使用( var sr = new StreamReader(response.GetResponseStream())) { strResponse = sr.ReadToEnd(); }

解决方案

1)请永远不要发布您的登录凭据。 2)当使用Postman测试API,您将在响应正文中看到错误消息:

必须通过x-nhia-apikey请求头参数提供有效的API密钥。

因此,您还必须提供此处无人知晓的有效API密钥。 您应该联系网站所有者以获取所需信息。

I'm trying to pass data to a web API and retrieve results via json. I keep getting the f.f. error: The remote server returned an error: (401) Unauthorized. Here is the code. What I have tried:

string authInfo = "XXXXXXX" + ":" + "XXXXXXX"; authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo)); HttpWebRequest request =(HttpWebRequest)WebRequest.Create(@"elig.nhia.gov.gh:5007/api/hp/authenticate/app"); request.Method = "POST"; request.Accept = "application/json; charset=utf-8"; request.Headers["Authorization"] = "Basic " + authInfo; using (var streamWriter = new StreamWriter(request.GetRequestStream())) { string json = new JavaScriptSerializer().Serialize(new { GhanaCardNo = "", UMN = membershipNoTextBox.Text }); streamWriter.Write(json); streamWriter.Flush(); streamWriter.Close(); } var response = (HttpWebResponse)request.GetResponse(); string strResponse = ""; using (var sr = new StreamReader(response.GetResponseStream())) { strResponse = sr.ReadToEnd(); }

解决方案

1) Please never ever publish your logon credentials. 2) When testing the API with Postman you will see an error message in the response body:

A valid API Key must be provided via x-nhia-apikey request header parameter.

You therefore also must supply a valid API key which nobody here knows. You should contact the web site owner in order to get the needed information.

更多推荐

远程服务器返回错误:(401)未经授权。

本文发布于:2023-11-09 22:43:50,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1573637.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:未经授权   错误   服务器

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!