使用 REST Web 服务。API 密钥认证

use*_*238 1 c# rest web-services

我一直在努力解决一些小问题。我想连接到 REST Web 服务,并且我拥有要使用的该 Web 服务的 API 密钥。我已经在 Google REST 控制台中尝试过该服务,它运行良好。

但是当我尝试为其构建 ac# .net 项目时,我不知道如何设置用于身份验证的 api 密钥。我从其他站点获取了此代码:

string url = "http://Demo.company.com/Data/Values/1029/CarPart/id/"
HttpWebRequest GETRequest = (HttpWebRequest)WebRequest.Create(url);
GETRequest.Method = "GET";

Console.WriteLine("Sending GET Request");
HttpWebResponse GETResponse = (HttpWebResponse)GETRequest.GetResponse();
Stream GETResponseStream = GETResponse.GetResponseStream();
StreamReader sr = new StreamReader(GETResponseStream);

Console.WriteLine("Response from Server");
Console.WriteLine(sr.ReadToEnd());
Run Code Online (Sandbox Code Playgroud)

如何使用我的 Api 密钥验证此服务:asdf1234。我需要将它添加到我的标题中,但如何添加?你能告诉我一些代码示例吗?

干杯雷神

Nat*_*usa 5

您应该能够执行以下操作:

HttpWebRequest GETRequest = (HttpWebRequest)WebRequest.Create(url);
GETRequest.Method = "GET";
GETRequest.Headers.Add("api-key", "asdf1234");
Run Code Online (Sandbox Code Playgroud)

其中“api-key”是您要设置的标头的名称。

  • 好的。我只是想像个傻子一样问一下。这个标头名称是我从 REST Web 服务文档中获得的唯一名称,还是只是 HttpWebRequest 类中指定的标头名称?在哪里可以找到我想要设置的标头的名称? (2认同)
  • 它应该在 REST 服务文档中。如果您发布指向 REST 文档的链接,我可以查看一下。 (2认同)