72

我有一个可以正常工作的 WebAPI。我已经在本地测试并部署到我的服务器并在 IIS 中配置此服务以使用基本身份验证。我能够浏览到我的服务,并且收到了我期望的身份验证挑战,并且一切正常!现在我想使用 Fiddler 来测试这个,我已经构建了一个到特定 url 的 POST,我得到了一个 401 (Unauthorized) 错误。所以我决定在我的请求标头中添加一个 base64 字符串,我现在收到 500 错误。

我想知道的是,我的请求标头看起来正确吗?我显然会混淆我的 Host 和 base64 字符串,其中包含格式 username:password 用于身份验证质询。

User-Agent: Fiddler
Host: xxx.xxx.xxx.xxx:xxxx
Content-Length: 185
Content-Type: text/json
Authorization: Basic jskadjfhlksadjhdflkjhiu9813ryiu34
4

6 回答 6

140

Fiddler 有一个为您执行 Base64 的工具。只需创建您的字符串:username:password,然后转到 Tools -> TextWizard 并输入用户名密码组合并选择 ToBase64。将其复制并粘贴到您的授权标题中,您应该一切顺利。

于 2012-09-19T21:43:30.363 回答
22

亚历克斯加德是对的。创建 ToBase64 编码后,在编写请求时在标题下添加以下行:

Authorization: Basic [encoded_value]

现在执行请求,它应该可以工作了!:)

于 2014-10-27T09:21:06.443 回答
12

如果您在 Composer URL 字段中指定用户名和密码,较新版本的 Fiddler(我在 v4.6.20172.31233 中测试)将自动Authorization为您创建并添加必要的标头,如下所示:

https://SomeUser:SomePass@sitename

执行后,这会将其从 URL 中剥离出来并变成一个 HTTP 标头,例如:

Authorization: Basic U29tZVVzZXI6U29tZVBhc3M=
于 2017-09-08T15:06:46.640 回答
9

我知道这是一篇较旧的帖子,但是当我第一次查看如何执行此操作时,我遇到了这篇帖子并知道这是答案,但我仍然不知道凭据是否需要以逗号分隔等。所以,以防万一这可能对这里的某人有所帮助,这是我为 Fiddler 整理的 JSON POST 笔记。

First you need to Base64 encode your "username:password"
    • Go to Tools | Text Wizard | To Base64 in dropdown

Post a message in the Composer tab
    • Change the type to POST in the dropdown.
    • Put in the URL
    • Add the following to the top header section.
        ○ Authorization: Basic ReplaceWithYourEncodedCredtials=
        ○ Content-Type: application/json; charset=utf-8
    • Add some JSON content to the body
        ○ [{"Address1":null,"Address2":null,"BirthDate":"1967-10-06T00:00:00","City":null,"CompanyHireDate":"2011-06-03T00:00:00","EmailAddress":"myEmail@company.com","EmployeeNumber":"112233","FirstName":"JOHN","LastName":"DOE","PhoneNumber":null,"State":null,"UserName":"JDoe","ZipCode":null}]
于 2016-02-06T02:54:43.833 回答
0

我希望这可以帮助像我这样的新手。

如果您使用 GET,则在令牌周围使用[ ]将不起作用。

以下没有工作: -

Authorization: Basic [MkgzczhaVnhZNG13d1FkTVJ2ZmZMQzFQQnhZRG5WdUVhbDNiVWs0ZldDdzo=]

以下工作: -

Authorization: Basic MkgzczhaVnhZNG13d1FkTVJ2ZmZMQzFQQnhZRG5WdUVhbDNiVWs0ZldDdzo=
于 2019-11-23T11:35:41.843 回答
-1

我发现在 Fiddler 4 中,我所要做的就是检查规则菜单上的自动验证选项。

于 2017-12-08T16:08:10.103 回答