将curl命令转换为c#代码

本文关键字:代码 转换 curl 命令 | 更新日期: 2023-09-27 17:49:25

我在将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=

有人能帮忙吗?

谢谢

将curl命令转换为c#代码

eDo0NTljNGRhNjQwMWQzOWJiZjkzMjdlZTE3MTc1ZTI1Yw==x:459c4da6401d39bbf9327ee17175e25c的base64编码。点击这里上网试试。

授权的请求头将是您在上面编码的base64字符串。

httpWebRequest.Headers.Add("Authorization", "Basic eDo0NTljNGRhNjQwMWQzOWJiZjkzMjdlZTE3MTc1ZTI1Yw==");

您可以使用此链接在c#中执行base64编码/解码。