【发布时间】:2014-02-07 06:41:17
【问题描述】:
我正在尝试将用户名和密码传递到以下 URL:
https://maxcvservices.dnb.com/rest/Authentication
根据文档,user_id 和密码必须作为带有键的标头传递:分别为 x-dnb-user、x-dnb-pwd。
到目前为止,我有以下似乎可以工作的代码,但我无法检索响应对象返回的身份验证令牌:
public static void Main (string[] args)
{
var client = new RestClient ("https://maxcvservices.dnb.com/rest/Authentication");
var request = new RestRequest (Method.POST);
request.AddHeader("x-dnb-user", myEmail);
request.AddHeader("x-dnb-pwd", myPassword);
IRestResponse resp = client.Execute(request);
var content = resp.Content;
Console.WriteLine (resp.StatusDescription);
Console.WriteLine (resp.StatusCode);
}
当我尝试打印内容时,我得到一个空行,但我真正期待的是服务返回的身份验证令牌。我认为我在代码中正在做的几件事(但不确定)是将用户 ID 和密码作为 POST 请求中的标头传递,这是必需的。令牌作为响应对象中“授权”字段的值返回。我想知道如何打印令牌。此外,statusDescription、statusCode 都打印 OK,这告诉我我有正确的请求,但无法在响应中找到身份验证令牌。在指导我如何访问返回的 POST 响应的授权字段中的身份验证令牌时,任何帮助将不胜感激。
【问题讨论】:
标签: c# authentication http-post restsharp