【发布时间】:2014-03-11 12:28:04
【问题描述】:
我在将 curl 命令转换为 c# 代码时遇到问题。
我收到了一个 curl 命令,其中包含如下 API 密钥:
curl -k -u x:459c4da6401d39bbf9327ee17175e25c
-H "Content-Type: application/json" https://disney.com/v1/services.json
当我在 Fiddler 中观看此调用时,我可以看到如下所示的标头值:
Authorization: Basic eDo0NTljNGRhNjQwMWQzOWJiZjkzMjdlZTE3MTc1ZTI1Yw==
所以,curl 命令运行良好……但我无法在 c# 代码中复制它
我不明白x:459c4da6401d39bbf9327ee17175e25c 是如何变成Authorization: Basic eDo0NTljNGRhNjQwMWQzOWJiZjkzMjdlZTE3MTc1ZTI1Yw== 的
随后,我很困惑如何让我的 c# 代码从 API 密钥更改为我在 Fiddler 中看到的内容。
当我使用此代码添加标头时,授权失败:
httpWebRequest.Headers.Add("Authorization", "459c4da6401d39bbf9327ee17175e25c");
我也试过了:
httpWebRequest.Headers["Authorization"] = "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes("459c4da6401d39bbf9327ee17175e25c"));
但这会产生这样的标题值:
Authorization: Basic NDU5YzRkYTY0MDFkMzliYmY5MzI3ZWUxNzE3NWUyNWM=
有人可以帮忙吗?
谢谢
【问题讨论】:
标签: c# api curl http-headers